Function at 0x45c4f4
Capabilities:
Contain obfuscated stackstrings
Query service status

Disassembly:
mov eax, 0x6c5d7f
call fcn.006b9c3c
sub esp, 0xa90
push ebx
push esi
push edi
mov dword [ebp - 0x10], esp
mov dword [ebp - 0x24], ecx
xor ebx, ebx
mov dword [ebp - 0x18], ebx
mov dword [ebp - 4], 1
mov byte [ebp - 4], 2
mov dword [ebp - 0x31c], ebx
mov dword [ebp - 0x318], ebx
mov byte [ebp - 4], 3
mov dword [ebp - 0x88], ebx
mov dword [ebp - 0xc0], ebx
mov dword [ebp - 0x20], ebx
mov dword [ebp - 0x2c], ebx
mov dword [ebp - 0x28], ebx
mov dword [ebp - 0x28], 0xf
mov dword [ebp - 0x2c], ebx
mov byte [ebp - 0x3c], bl
mov byte [ebp - 4], 4
push 4
push ebx
push ebx
call dword [sym.imp.ADVAPI32.dll_OpenSCManagerW]
mov edi, eax
mov dword [ebp - 0x1c], edi
test edi, edi
jne 0x45ca30
push ecx
lea ecx, [ebp - 0x7d8]
call fcn.004943aa
mov edi, eax
mov ecx, ebx
push 0x7f
pop esi
mov dword [ebp - 0x1b0], ecx
cmp ecx, 0xe
jae 0x45c5a1
push 0xc
pop eax
sub eax, dword [edi + ecx*4 + 0x10]
imul eax, eax, 0x2c
cdq
idiv esi
lea eax, [esi + edx]
cdq
idiv esi
mov byte [ecx + edi], dl
inc ecx
jmp 0x45c57d
mov byte [edi + 0xe], bl
push edi
call fcn.0040f475
pop ecx
push eax
push edi
lea ecx, [ebp - 0x3c]
call fcn.00411f4c
push ecx
lea ecx, [ebp - 0x6c8]
call fcn.00494336
mov edi, eax
mov ecx, ebx
mov dword [ebp - 0x1b4], ecx
cmp ecx, 0x14
jae 0x45c5e9
mov eax, dword [edi + ecx*4 + 0x18]
sub eax, 0x5b
imul eax, eax, 0x37
cdq
idiv esi
lea eax, [esi + edx]
cdq
idiv esi
mov byte [ecx + edi], dl
inc ecx
jmp 0x45c5c5
mov byte [edi + 0x14], bl
push edi
call fcn.0040f475
pop ecx
push eax
push edi
lea ecx, [ebp - 0x3c]
call fcn.00411f4c
push ecx
lea ecx, [ebp - 0xa9c]
call fcn.0049428f
mov edi, eax
mov ecx, ebx
mov dword [ebp - 0x1b8], ecx
cmp ecx, 0x1a
jae 0x45c631
push 0x72
pop eax
sub eax, dword [edi + ecx*4 + 0x1c]
imul eax, eax, 0x2d
cdq
idiv esi
lea eax, [esi + edx]
cdq
idiv esi
mov byte [ecx + edi], dl
inc ecx
jmp 0x45c60d
mov byte [edi + 0x1a], bl
push edi
call fcn.0040f475
pop ecx
push eax
push edi
lea ecx, [ebp - 0x3c]
call fcn.00411f4c
push ecx
lea ecx, [ebp - 0x720]
call fcn.00494224
mov edi, eax
mov ecx, ebx
mov dword [ebp - 0x1bc], ecx
cmp ecx, 0x10
jae 0x45c679
mov eax, dword [edi + ecx*4 + 0x14]
sub eax, 0x7b
imul eax, eax, 0x29
cdq
idiv esi
lea eax, [esi + edx]
cdq
idiv esi
mov byte [ecx + edi], dl
inc ecx
jmp 0x45c655
mov byte [edi + 0x10], bl
push edi
call fcn.0040f475
pop ecx
push eax
push edi
lea ecx, [ebp - 0x3c]
call fcn.00411f4c
push ecx
lea ecx, [ebp - 0x660]
call fcn.004941ce
mov edi, eax
mov ecx, ebx
mov dword [ebp - 0x1c0], ecx
cmp ecx, 0xe
jae 0x45c6c1
mov eax, dword [edi + ecx*4 + 0x10]
sub eax, 0x22
imul eax, eax, 0x13
cdq
idiv esi
lea eax, [esi + edx]
cdq
idiv esi
mov byte [ecx + edi], dl
inc ecx
jmp 0x45c69d
mov byte [edi + 0xe], bl
push edi
call fcn.0040f475
pop ecx
push eax
push edi
lea ecx, [ebp - 0x3c]
call fcn.00411f4c
mov dword [ebp - 0x17c], ebx
mov dword [ebp - 0x178], 0x21
mov dword [ebp - 0x174], 0x61
mov dword [ebp - 0x170], 0x6d
mov ecx, ebx
mov dword [ebp - 0xe0], ecx
cmp ecx, 3
jae 0x45c726
push 0x6c
pop eax
sub eax, dword [ebp + ecx*4 - 0x178]
imul eax, eax, 0x3e
cdq
idiv esi
lea eax, [esi + edx]
cdq
idiv esi
mov byte [ebp + ecx - 0x17c], dl
inc ecx
jmp 0x45c6fb
mov byte [ebp - 0x179], bl
lea eax, [ebp - 0x17c]
push eax
lea ecx, [ebp - 0x54]
call fcn.00411aae
mov byte [ebp - 4], 5
lea edx, [ebp - 0x54]
lea ecx, [ebp - 0xb8]
call fcn.00460888
mov dword [ebp - 0x1c], eax
mov byte [ebp - 4], 6
xor eax, eax
lea edi, [ebp - 0x378]
stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
movaps xmm0, xmmword [0x7478a0]
movups xmmword [ebp - 0x370], xmm0
mov dword [ebp - 0x360], 5
mov dword [ebp - 0x35c], 0x35
mov ecx, ebx
mov dword [ebp - 0xe4], ecx
cmp ecx, 6
jae 0x45c7af
mov eax, dword [ebp + ecx*4 - 0x370]
sub eax, 0xf
imul eax, eax, 0xf
cdq
idiv esi
lea eax, [esi + edx]
cdq
idiv esi
mov byte [ebp + ecx - 0x378], dl
inc ecx
jmp 0x45c784
mov byte [ebp - 0x372], bl
push dword [ebp - 0x1c]
lea edx, [ebp - 0x378]
lea ecx, [ebp - 0xa0]
call fcn.004b09c3
pop ecx
mov edi, eax
mov byte [ebp - 4], 7
mov dword [ebp - 0x2ec], ebx
mov dword [ebp - 0x2e8], ebx
movaps xmm0, xmmword [0x7456d0]
movups xmmword [ebp - 0x2e4], xmm0
mov dword [ebp - 0x2d4], 0x21
mov dword [ebp - 0x2d0], 0x31
mov dword [ebp - 0x2cc], 0x69
mov ecx, ebx
mov dword [ebp - 0xe8], ecx
cmp ecx, 7
jae 0x45c835
mov eax, dword [ebp + ecx*4 - 0x2e4]
sub eax, 0x67
imul eax, eax, 0x1f
cdq
idiv esi
lea eax, [esi + edx]
cdq
idiv esi
mov byte [ebp + ecx - 0x2ec], dl
inc ecx
jmp 0x45c80a
mov byte [ebp - 0x2e5], bl
lea eax, [ebp - 0x2ec]
push eax
mov edx, edi
lea ecx, [ebp - 0x84]
call fcn.0041cdde
pop ecx
mov byte [ebp - 4], 8
push 0xffffffffffffffff
push ebx
push eax
lea ecx, [ebp - 0x3c]
call fcn.00411fef
mov byte [ebp - 4], 7
push ebx
xor edi, edi
inc edi
push edi
lea ecx, [ebp - 0x84]
call fcn.00411bc8
mov byte [ebp - 4], 6
push ebx
push edi
lea ecx, [ebp - 0xa0]
call fcn.00411bc8
mov byte [ebp - 4], 5
push ebx
push edi
lea ecx, [ebp - 0xb8]
call fcn.00411bc8
mov byte [ebp - 4], 4
push ebx
push edi
lea ecx, [ebp - 0x54]
call fcn.00411bc8
mov dword [ebp - 0x18c], ebx
mov dword [ebp - 0x188], 0x56
mov dword [ebp - 0x184], 9
mov dword [ebp - 0x180], 0x42
mov ecx, ebx
mov dword [ebp - 0xec], ecx
cmp ecx, 3
jae 0x45c8f5
mov eax, dword [ebp + ecx*4 - 0x188]
sub eax, 0x5d
imul eax, eax, 7
cdq
idiv esi
lea eax, [esi + edx]
cdq
idiv esi
mov byte [ebp + ecx - 0x18c], dl
inc ecx
jmp 0x45c8ca
mov byte [ebp - 0x189], bl
lea eax, [ebp - 0x18c]
push eax
lea ecx, [ebp - 0x54]
call fcn.00411aae
mov byte [ebp - 4], 9
lea edx, [ebp - 0x54]
lea ecx, [ebp - 0xb8]
call fcn.00460888
mov byte [ebp - 4], 0xa
push eax
push str._dep_
lea ecx, [ebp - 0x358]
call fcn.004a3bfc
mov ecx, eax
call fcn.004a3bca
mov edx, eax
lea ecx, [ebp - 0xa0]
call fcn.004b09c3
mov esi, eax
mov byte [ebp - 4], 0xb
mov dword [esp], str.__dep_
lea ecx, [ebp - 0x204]
call fcn.0049d8d8
mov ecx, eax
call fcn.0049d8a6
push eax
mov edx, esi
lea ecx, [ebp - 0x84]
call fcn.0041cdde
pop ecx
mov byte [ebp - 4], 0xc
push 0xffffffffffffffff
push ebx
push eax
lea ecx, [ebp - 0x3c]
call fcn.00411fef
mov byte [ebp - 4], 0xb
push ebx
push edi
lea ecx, [ebp - 0x84]
call fcn.00411bc8
mov byte [ebp - 4], 0xa
push ebx
push edi
lea ecx, [ebp - 0xa0]
call fcn.00411bc8
mov byte [ebp - 4], 9
push ebx
push edi
lea ecx, [ebp - 0xb8]
call fcn.00411bc8
mov byte [ebp - 4], 4
push ebx
push edi
lea ecx, [ebp - 0x54]
call fcn.00411bc8
mov esi, dword [ebp - 0x24]
mov dword [esi + 0x10], ebx
mov dword [esi + 0x14], ebx
mov dword [esi + 0x14], 0xf
mov dword [esi + 0x10], ebx
cmp dword [esi + 0x14], 0x10
jb 0x45c9e1
mov eax, dword [esi]
jmp 0x45c9e3
mov eax, esi
mov byte [eax], bl
lea eax, [ebp - 0x3c]
push eax
mov ecx, esi
call fcn.0041208e
mov dword [ebp - 0x18], edi
mov byte [ebp - 4], 3
push ebx
push edi
lea ecx, [ebp - 0x3c]
call fcn.00411bc8
mov byte [ebp - 4], 2
test ebx, ebx
je 0x45ca10
mov ecx, ebx
call fcn.0040f5b8
mov byte [ebp - 4], bl
push ebx
push edi
lea ecx, [ebp + 8]
call fcn.004ab703
mov eax, esi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
lea eax, [ebp + 8]
cmp dword [ebp + 0x1c], 8
cmovae eax, dword [ebp + 8]
push 0x80000000
push eax
push edi
call dword [sym.imp.ADVAPI32.dll_OpenServiceW]
mov esi, eax
mov dword [ebp - 0xc4], esi
test esi, esi
jne 0x45cf11
push edi
call dword [sym.imp.ADVAPI32.dll_CloseServiceHandle]
push str._pid_N_A__pid_
lea ecx, [ebp - 0x660]
call fcn.0049d7b3
mov ecx, eax
call fcn.0049d781
mov esi, eax
push esi
call fcn.0040f475
pop ecx
push eax
push esi
lea ecx, [ebp - 0x3c]
call fcn.00411f4c
push ecx
lea ecx, [ebp - 0x99c]
call fcn.00494144
mov edi, eax
mov ecx, ebx
push 0x7f
pop esi
mov dword [ebp - 0xf0], ecx
cmp ecx, 0x18
jae 0x45cac0
push 0x4e
pop eax
sub eax, dword [edi + ecx*4 + 0x1c]
imul eax, eax, 0x2a
cdq
idiv esi
lea eax, [esi + edx]
cdq
idiv esi
mov byte [ecx + edi], dl
inc ecx
jmp 0x45ca9c
mov byte [edi + 0x18], bl
push edi
call fcn.0040f475
pop ecx
push eax
push edi
lea ecx, [ebp - 0x3c]
call fcn.00411f4c
push ecx
lea ecx, [ebp - 0x920]
call fcn.004940b6
mov edi, eax
mov ecx, ebx
mov dword [ebp - 0xf4], ecx
cmp ecx, 0x16
jae 0x45cb08
push 0x73
pop eax
sub eax, dword [edi + ecx*4 + 0x18]
imul eax, eax, 0x3f
cdq
idiv esi
lea eax, [esi + edx]
cdq
idiv esi
mov byte [ecx + edi], dl
inc ecx
jmp 0x45cae4
mov byte [edi + 0x16], bl
push edi
call fcn.0040f475
pop ecx
push eax
push edi
lea ecx, [ebp - 0x3c]
call fcn.00411f4c
push str._type_N_A__type_
lea ecx, [ebp - 0x720]
call fcn.0049d671
mov ecx, eax
call fcn.0049d63f
mov esi, eax
push esi
call fcn.0040f475
pop ecx
push eax
push esi
lea ecx, [ebp - 0x3c]
call fcn.00411f4c
push ecx
lea ecx, [ebp - 0x8b0]
call fcn.00494060
mov edi, eax
mov ecx, ebx
push 0x7f
pop esi
mov dword [ebp - 0xf8], ecx
cmp ecx, 0xe
jae 0x45cb7d
mov eax, dword [edi + ecx*4 + 0x10]
sub eax, 0x3f
imul eax, eax, 0x1c
cdq
idiv esi
lea eax, [esi + edx]
cdq
idiv esi
mov byte [ecx + edi], dl
inc ecx
jmp 0x45cb59
mov byte [edi + 0xe], bl
push edi
call fcn.0040f475
pop ecx
push eax
push edi
lea ecx, [ebp - 0x3c]
call fcn.00411f4c
mov dword [ebp - 0x19c], ebx
mov dword [ebp - 0x198], 0x13
mov dword [ebp - 0x194], 0x12
mov dword [ebp - 0x190], 0x79
mov ecx, ebx
mov dword [ebp - 0xfc], ecx
cmp ecx, 3
jae 0x45cbe2
mov eax, dword [ebp + ecx*4 - 0x198]
sub eax, 0x7b
imul eax, eax, 0x1f
cdq
idiv esi
lea eax, [esi + edx]
cdq
idiv esi
mov byte [ebp + ecx - 0x19c], dl
inc ecx
jmp 0x45cbb7
mov byte [ebp - 0x199], bl
lea eax, [ebp - 0x19c]
push eax
lea ecx, [ebp - 0x54]
call fcn.00411aae
mov byte [ebp - 4], 0xd
lea edx, [ebp - 0x54]
lea ecx, [ebp - 0xb8]
call fcn.00460888
mov dword [ebp - 0x1c], eax
mov byte [ebp - 4], 0xe
xor eax, eax
lea edi, [ebp - 0x398]
stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
movaps xmm0, xmmword [0x7487c0]
movups xmmword [ebp - 0x390], xmm0
mov dword [ebp - 0x380], 0x18
mov dword [ebp - 0x37c], 0x6f
mov ecx, ebx
mov dword [ebp - 0x100], ecx
cmp ecx, 6
jae 0x45cc6b
push 0x3a
pop eax
sub eax, dword [ebp + ecx*4 - 0x390]
imul eax, eax, 0x12
cdq
idiv esi
lea eax, [esi + edx]
cdq
idiv esi
mov byte [ebp + ecx - 0x398], dl
inc ecx
jmp 0x45cc40
mov byte [ebp - 0x392], bl
push dword [ebp - 0x1c]
lea edx, [ebp - 0x398]
lea ecx, [ebp - 0xa0]
call fcn.004b09c3
pop ecx
mov edi, eax
mov byte [ebp - 4], 0xf
mov dword [ebp - 0x310], ebx
mov dword [ebp - 0x30c], ebx
movaps xmm0, xmmword [0x747680]
movups xmmword [ebp - 0x308], xmm0
mov dword [ebp - 0x2f8], 0x1d
mov dword [ebp - 0x2f4], 0x42
mov dword [ebp - 0x2f0], 5
mov ecx, ebx
mov dword [ebp - 0x104], ecx
cmp ecx, 7
jae 0x45ccf1
mov eax, dword [ebp + ecx*4 - 0x308]
sub eax, 0x30
imul eax, eax, 0x22
cdq
idiv esi
lea eax, [esi + edx]
cdq
idiv esi
mov byte [ebp + ecx - 0x310], dl
inc ecx
jmp 0x45ccc6
mov byte [ebp - 0x309], bl
lea eax, [ebp - 0x310]
push eax
mov edx, edi
lea ecx, [ebp - 0x84]
call fcn.0041cdde
pop ecx
mov byte [ebp - 4], 0x10
push 0xffffffffffffffff
push ebx
push eax
lea ecx, [ebp - 0x3c]
call fcn.00411fef
mov byte [ebp - 4], 0xf
push ebx
xor edi, edi
inc edi
push edi
lea ecx, [ebp - 0x84]
call fcn.00411bc8
mov byte [ebp - 4], 0xe
push ebx
push edi
lea ecx, [ebp - 0xa0]
call fcn.00411bc8
mov byte [ebp - 4], 0xd
push ebx
push edi
lea ecx, [ebp - 0xb8]
call fcn.00411bc8
mov byte [ebp - 4], 4
push ebx
push edi
lea ecx, [ebp - 0x54]
call fcn.00411bc8
push 0x73b9d0
lea ecx, [ebp - 0x4c]
call fcn.0049401b
mov ecx, eax
call fcn.00493fe9
push eax
lea ecx, [ebp - 0x84]
call fcn.00411aae
mov byte [ebp - 4], 0x11
lea edx, [ebp - 0x84]
lea ecx, [ebp - 0xdc]
call fcn.00460888
mov dword [ebp - 0x1c], eax
mov byte [ebp - 4], 0x12
mov dword [ebp - 0x28c], ebx
mov word [ebp - 0x288], bx
movaps xmm0, xmmword [0x7453f0]
movups xmmword [ebp - 0x284], xmm0
mov dword [ebp - 0x274], 0x5b
mov edi, ebx
mov dword [ebp - 0x108], edi
cmp edi, 5
jae 0x45cdf0
imul eax, dword [ebp + edi*4 - 0x284], 0x24
push 0x24
pop ecx
sub ecx, eax
mov eax, ecx
cdq
idiv esi
lea eax, [esi + edx]
cdq
idiv esi
mov byte [ebp + edi - 0x28c], dl
inc edi
jmp 0x45cdc3
mov byte [ebp - 0x287], bl
push dword [ebp - 0x1c]
lea edx, [ebp - 0x28c]
lea ecx, [ebp - 0xb8]
call fcn.004b09c3
pop ecx
mov dword [ebp - 0x1c], eax
mov byte [ebp - 4], 0x13
xor eax, eax
lea edi, [ebp - 0x33c]
stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
movaps xmm0, xmmword [0x744eb0]
movups xmmword [ebp - 0x334], xmm0
mov dword [ebp - 0x324], 0x7a
mov dword [ebp - 0x320], 0x50
mov ecx, ebx
mov dword [ebp - 0x10c], ecx
cmp ecx, 6
jae 0x45ce6d
push 0x21
pop eax
sub eax, dword [ebp + ecx*4 - 0x334]
imul eax, eax, 0x17
cdq
idiv esi
lea eax, [esi + edx]
cdq
idiv esi
mov byte [ebp + ecx - 0x33c], dl
inc ecx
jmp 0x45ce42
mov byte [ebp - 0x336], bl
lea eax, [ebp - 0x33c]
push eax
mov edx, dword [ebp - 0x1c]
lea ecx, [ebp - 0xa0]
call fcn.0041cdde
pop ecx
mov byte [ebp - 4], 0x14
push 0xffffffffffffffff
push ebx
push eax
lea ecx, [ebp - 0x3c]
call fcn.00411fef
mov byte [ebp - 4], 0x13
push ebx
xor edi, edi
inc edi
push edi
lea ecx, [ebp - 0xa0]
call fcn.00411bc8
mov byte [ebp - 4], 0x12
push ebx
push edi
lea ecx, [ebp - 0xb8]
call fcn.00411bc8
mov byte [ebp - 4], 0x11
push ebx
push edi
lea ecx, [ebp - 0xdc]
call fcn.00411bc8
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x84]
push ebx
push edi
call fcn.00411bc8
mov esi, dword [ebp - 0x24]
mov dword [esi + 0x10], ebx
mov dword [esi + 0x14], ebx
mov dword [esi + 0x14], 0xf
mov dword [esi + 0x10], ebx
cmp dword [esi + 0x14], 0x10
jb 0x45cefd
mov eax, dword [esi]
jmp 0x45ceff
mov eax, esi
mov byte [eax], bl
lea eax, [ebp - 0x3c]
push eax
mov ecx, esi
call fcn.0041208e
jmp 0x45c9f0
lea eax, [ebp - 0x88]
push eax
push 0x24
lea eax, [ebp - 0x574]
push eax
push ebx
push esi
call dword [sym.imp.ADVAPI32.dll_QueryServiceStatusEx]
test eax, eax
jne 0x45d395
push esi
mov esi, dword [sym.imp.ADVAPI32.dll_CloseServiceHandle]
call esi
push edi
call esi
push ecx
lea ecx, [ebp - 0x820]
call fcn.00493f8b
mov edi, eax
mov ecx, ebx
push 0x7f
pop esi
mov dword [ebp - 0x110], ecx
cmp ecx, 0xe
jae 0x45cf74
push 0x46
pop eax
sub eax, dword [edi + ecx*4 + 0x10]
imul eax, eax, 0x2d
cdq
idiv esi
lea eax, [esi + edx]
cdq
idiv esi
mov byte [edi + ecx], dl
inc ecx
jmp 0x45cf50
mov byte [edi + 0xe], bl
push edi
call fcn.0040f475
pop ecx
push eax
push edi
lea ecx, [ebp - 0x3c]
call fcn.00411f4c
push ecx
lea ecx, [ebp - 0xa18]
call fcn.00493f01
mov edi, eax
mov ecx, ebx
mov dword [ebp - 0x114], ecx
cmp ecx, 0x18
jae 0x45cfbc
push 0x33
pop eax
sub eax, dword [edi + ecx*4 + 0x1c]
imul eax, eax, 0x3f
cdq
idiv esi
lea eax, [esi + edx]
cdq
idiv esi
mov byte [edi + ecx], dl
inc ecx
jmp 0x45cf98
mov byte [edi + 0x18], bl
push edi
call fcn.0040f475
pop ecx
push eax
push edi
lea ecx, [ebp - 0x3c]
call fcn.00411f4c
push ecx
lea ecx, [ebp - 0x790]
call fcn.00493e73
mov edi, eax
mov ecx, ebx
mov dword [ebp - 0x118], ecx
cmp ecx, 0x16
jae 0x45d004
push 0x12
pop eax
sub eax, dword [edi + ecx*4 + 0x18]
imul eax, eax, 0x14
cdq
idiv esi
lea eax, [esi + edx]
cdq
idiv esi
mov byte [ecx + edi], dl
inc ecx
jmp 0x45cfe0
mov byte [edi + 0x16], bl
push edi
call fcn.0040f475
pop ecx
push eax
push edi
lea ecx, [ebp - 0x3c]
call fcn.00411f4c
push ecx
lea ecx, [ebp - 0x5c8]
call fcn.00493e08
mov edi, eax
mov ecx, ebx
mov dword [ebp - 0x11c], ecx
cmp ecx, 0x10
jae 0x45d04c
mov eax, dword [edi + ecx*4 + 0x14]
sub eax, 0xd
imul eax, eax, 0xf
cdq
idiv esi
lea eax, [esi + edx]
cdq
idiv esi
mov byte [ecx + edi], dl
inc ecx
jmp 0x45d028
mov byte [edi + 0x10], bl
push edi
call fcn.0040f475
pop ecx
push eax
push edi
lea ecx, [ebp - 0x3c]
call fcn.00411f4c
push ecx
lea ecx, [ebp - 0x868]
call fcn.00493db2
mov edi, eax
mov ecx, ebx
mov dword [ebp - 0x120], ecx
cmp ecx, 0xe
jae 0x45d094
push 0x4e
pop eax
sub eax, dword [edi + ecx*4 + 0x10]
imul eax, eax, 0x12
cdq
idiv esi
lea eax, [esi + edx]
cdq
idiv esi
mov byte [ecx + edi], dl
inc ecx
jmp 0x45d070
mov byte [edi + 0xe], bl
push edi
call fcn.0040f475
pop ecx
push eax
push edi
lea ecx, [ebp - 0x3c]
call fcn.00411f4c
mov dword [ebp - 0x1ac], ebx
mov dword [ebp - 0x1a8], 0x3a
mov dword [ebp - 0x1a4], 0x30
mov dword [ebp - 0x1a0], 0x3e
mov ecx, ebx
mov dword [ebp - 0x124], ecx
cmp ecx, 3
jae 0x45d0f9
push 0x52
pop eax
sub eax, dword [ebp + ecx*4 - 0x1a8]
imul eax, eax, 0x23
cdq
idiv esi
lea eax, [esi + edx]
cdq
idiv esi
mov byte [ebp + ecx - 0x1ac], dl
inc ecx
jmp 0x45d0ce
mov byte [ebp - 0x1a9], bl
lea eax, [ebp - 0x1ac]
push eax
lea ecx, [ebp - 0x54]
call fcn.00411aae
mov byte [ebp - 4], 0x15
lea edx, [ebp - 0x54]
lea ecx, [ebp - 0xb8]
call fcn.00460888
mov dword [ebp - 0x1c], eax
mov byte [ebp - 4], 0x16
xor eax, eax
lea edi, [ebp - 0x3b8]
stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
movaps xmm0, xmmword [0x748690]
movups xmmword [ebp - 0x3b0], xmm0
mov dword [ebp - 0x3a0], 0x7e
mov dword [ebp - 0x39c], 0x45
mov ecx, ebx
mov dword [ebp - 0x128], ecx
cmp ecx, 6
jae 0x45d182
push 3
pop eax
sub eax, dword [ebp + ecx*4 - 0x3b0]
imul eax, eax, 0x1a
cdq
idiv esi
lea eax, [esi + edx]
cdq
idiv esi
mov byte [ebp + ecx - 0x3b8], dl
inc ecx
jmp 0x45d157
mov byte [ebp - 0x3b2], bl
push dword [ebp - 0x1c]
lea edx, [ebp - 0x3b8]
lea ecx, [ebp - 0xa0]
call fcn.004b09c3
pop ecx
mov edi, eax
mov byte [ebp - 4], 0x17
mov dword [ebp - 0x1e4], ebx
mov dword [ebp - 0x1e0], ebx
movaps xmm0, xmmword [0x744e40]
movups xmmword [ebp - 0x1dc], xmm0
mov dword [ebp - 0x1cc], 3
mov dword [ebp - 0x1c8], 0x58
mov dword [ebp - 0x1c4], 0x44
mov ecx, ebx
mov dword [ebp - 0x12c], ecx
cmp ecx, 7
jae 0x45d208
push 0x69
pop eax
sub eax, dword [ebp + ecx*4 - 0x1dc]
imul eax, eax, 0x24
cdq
idiv esi
lea eax, [esi + edx]
cdq
idiv esi
mov byte [ebp + ecx - 0x1e4], dl
inc ecx
jmp 0x45d1dd
mov byte [ebp - 0x1dd], bl
lea eax, [ebp - 0x1e4]
push eax
mov edx, edi
lea ecx, [ebp - 0x84]
call fcn.0041cdde
pop ecx
mov byte [ebp - 4], 0x18
push 0xffffffffffffffff
push ebx
push eax
lea ecx, [ebp - 0x3c]
call fcn.00411fef
mov byte [ebp - 4], 0x17
push ebx
xor edi, edi
inc edi
push edi
lea ecx, [ebp - 0x84]
call fcn.00411bc8
mov byte [ebp - 4], 0x16
push ebx
push edi
lea ecx, [ebp - 0xa0]
call fcn.00411bc8
mov byte [ebp - 4], 0x15
push ebx
push edi
lea ecx, [ebp - 0xb8]
call fcn.00411bc8
mov byte [ebp - 4], 4
push ebx
push edi
lea ecx, [ebp - 0x54]
call fcn.00411bc8
mov dword [ebp - 0xd4], ebx
mov dword [ebp - 0xd0], 0x62
mov dword [ebp - 0xcc], 0xc
mov dword [ebp - 0xc8], 0x6b
mov ecx, ebx
mov dword [ebp - 0x130], ecx
cmp ecx, 3
jae 0x45d2c8
mov eax, dword [ebp + ecx*4 - 0xd0]
sub eax, 0x19
imul eax, eax, 0x37
cdq
idiv esi
lea eax, [esi + edx]
cdq
idiv esi
mov byte [ebp + ecx - 0xd4], dl
inc ecx
jmp 0x45d29d
mov byte [ebp - 0xd1], bl
lea eax, [ebp - 0xd4]
push eax
lea ecx, [ebp - 0x54]
call fcn.00411aae
mov byte [ebp - 4], 0x19
lea edx, [ebp - 0x54]
lea ecx, [ebp - 0xb8]
call fcn.00460888
mov byte [ebp - 4], 0x1a
push eax
push str._dep_
lea ecx, [ebp - 0x358]
call fcn.0049d4fd
mov ecx, eax
call fcn.0049d4cb
mov edx, eax
lea ecx, [ebp - 0xa0]
call fcn.004b09c3
mov esi, eax
mov byte [ebp - 4], 0x1b
mov dword [esp], str.__dep_
lea ecx, [ebp - 0x204]
call fcn.00497cec
mov ecx, eax
call fcn.00497cba
push eax
mov edx, esi
lea ecx, [ebp - 0x84]
call fcn.0041cdde
pop ecx
mov byte [ebp - 4], 0x1c
push 0xffffffffffffffff
push ebx
push eax
lea ecx, [ebp - 0x3c]
call fcn.00411fef
mov byte [ebp - 4], 0x1b
push ebx
push edi
lea ecx, [ebp - 0x84]
call fcn.00411bc8
mov byte [ebp - 4], 0x1a
push ebx
push edi
lea ecx, [ebp - 0xa0]
call fcn.00411bc8
mov byte [ebp - 4], 0x19
push ebx
push edi
lea ecx, [ebp - 0xb8]
call fcn.00411bc8
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x54]
jmp 0x45ced9
mov edx, dword [ebp - 0x558]
test edx, edx
je 0x45d3b8
lea ecx, [ebp - 0xdc]
call fcn.00413ca4
mov edi, eax
mov byte [ebp - 4], 0x1d
push 2
pop eax
push 0x7f
pop esi
jmp 0x45d430
mov dword [ebp - 0xb0], ebx
mov dword [ebp - 0xac], 0x3a
mov dword [ebp - 0xa8], 0x2b
mov dword [ebp - 0xa4], 0x40
mov ecx, ebx
push 0x7f
pop esi
mov dword [ebp - 0x134], ecx
cmp ecx, 3
jae 0x45d40c
mov eax, dword [ebp + ecx*4 - 0xac]
sub eax, 0x5e
imul eax, eax, 0x13
cdq
idiv esi
lea eax, [esi + edx]
cdq
idiv esi
mov byte [ebp + ecx - 0xb0], dl
inc ecx
jmp 0x45d3e1
mov byte [ebp - 0xad], bl
lea eax, [ebp - 0xb0]
push eax
lea ecx, [ebp - 0xa0]
call fcn.00411aae
mov edi, eax
mov dword [ebp - 4], 0x1e
push 4
pop eax
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x2a8], ebx
mov word [ebp - 0x2a4], bx
movaps xmm0, xmmword [0x745a40]
movups xmmword [ebp - 0x2a0], xmm0
mov dword [ebp - 0x290], 0x74
mov ecx, ebx
mov dword [ebp - 0x138], ecx
cmp ecx, 5
jae 0x45d485
mov eax, dword [ebp + ecx*4 - 0x2a0]
sub eax, 0x63
imul eax, eax, 0x29
cdq
idiv esi
lea eax, [esi + edx]
cdq
idiv esi
mov byte [ebp + ecx - 0x2a8], dl
inc ecx
jmp 0x45d45a
mov byte [ebp - 0x2a3], bl
push edi
lea edx, [ebp - 0x2a8]
lea ecx, [ebp - 0x84]
call fcn.004b09c3
pop ecx
mov dword [ebp - 0xbc], eax
mov dword [ebp - 4], 0x1f
xor eax, eax
lea edi, [ebp - 0x3d8]
stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
movaps xmm0, xmmword [0x746250]
movups xmmword [ebp - 0x3d0], xmm0
mov dword [ebp - 0x3c0], 0x52
mov dword [ebp - 0x3bc], 0x47
mov ecx, ebx
mov dword [ebp - 0x13c], ecx
cmp ecx, 6
jae 0x45d506
mov eax, dword [ebp + ecx*4 - 0x3d0]
sub eax, 0x21
imul eax, eax, 0xf
cdq
idiv esi
lea eax, [esi + edx]
cdq
idiv esi
mov byte [ebp + ecx - 0x3d8], dl
inc ecx
jmp 0x45d4db
mov byte [ebp - 0x3d2], bl
lea eax, [ebp - 0x3d8]
push eax
mov edx, dword [ebp - 0xbc]
lea ecx, [ebp - 0x54]
call fcn.0041cdde
pop ecx
mov byte [ebp - 4], 0x20
push 0xffffffffffffffff
push ebx
push eax
lea ecx, [ebp - 0x3c]
call fcn.00411fef
mov byte [ebp - 4], 0x1f
push ebx
xor edi, edi
inc edi
push edi
lea ecx, [ebp - 0x54]
call fcn.00411bc8
mov byte [ebp - 4], 0x1e
push ebx
push edi
lea ecx, [ebp - 0x84]
call fcn.00411bc8
mov dword [ebp - 4], 0x1d
mov eax, dword [ebp - 0x18]
test al, 4
je 0x45d578
and eax, 0xfffffffb
mov dword [ebp - 0x18], eax
push ebx
push edi
lea ecx, [ebp - 0xa0]
call fcn.00411bc8
mov eax, dword [ebp - 0x18]
mov dword [ebp - 4], 4
test al, 2
je 0x45d596
and eax, 0xfffffffd
mov dword [ebp - 0x18], eax
push ebx
push edi
lea ecx, [ebp - 0xdc]
call fcn.00411bc8
mov dword [ebp - 0x98], ebx
mov dword [ebp - 0x94], 9
push 0x49
pop edi
mov dword [ebp - 0x90], edi
mov dword [ebp - 0x8c], 0x55
mov ecx, ebx
mov dword [ebp - 0x140], ecx
cmp ecx, 3
jae 0x45d5e6
push 0x54
pop eax
sub eax, dword [ebp + ecx*4 - 0x94]
imul eax, eax, 0x3e
cdq
idiv esi
lea eax, [esi + edx]
cdq
idiv esi
mov byte [ebp + ecx - 0x98], dl
inc ecx
jmp 0x45d5bb
mov byte [ebp - 0x95], bl
lea eax, [ebp - 0x98]
push eax
lea ecx, [ebp - 0x6c]
call fcn.00411aae
mov byte [ebp - 4], 0x21
mov eax, dword [ebp - 0x570]
sub eax, 1
je 0x45d930
sub eax, 1
je 0x45d8c0
sub eax, 1
je 0x45d84d
sub eax, 1
je 0x45d7c9
sub eax, 1
je 0x45d740
sub eax, 1
je 0x45d6bc
sub eax, 1
jne 0x45d9b4
lea edi, [ebp - 0x2c8]
stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
movaps xmm0, xmmword [0x745ab0]
movups xmmword [ebp - 0x2c0], xmm0
mov dword [ebp - 0x2b0], 0x7c
mov dword [ebp - 0x2ac], 0x7a
mov ecx, ebx
mov dword [ebp - 0x144], ecx
cmp ecx, 6
jae 0x45d69d
push 0x31
pop eax
sub eax, dword [ebp + ecx*4 - 0x2c0]
imul eax, eax, 0x3f
cdq
idiv esi
lea eax, [esi + edx]
cdq
idiv esi
mov byte [ebp + ecx - 0x2c8], dl
inc ecx
jmp 0x45d672
mov byte [ebp - 0x2c2], bl
lea eax, [ebp - 0x2c8]
push eax
call fcn.0040f475
pop ecx
push eax
lea eax, [ebp - 0x2c8]
jmp 0x45d9ab
mov dword [ebp - 0x228], ebx
mov dword [ebp - 0x224], ebx
movaps xmm0, xmmword [0x745750]
movups xmmword [ebp - 0x220], xmm0
mov dword [ebp - 0x210], 0x73
mov dword [ebp - 0x20c], 3
mov dword [ebp - 0x208], 0x6d
mov ecx, ebx
mov dword [ebp - 0x148], ecx
cmp ecx, 7
jae 0x45d721
push 0x36
pop eax
sub eax, dword [ebp + ecx*4 - 0x220]
imul eax, eax, 0x2a
cdq
idiv esi
lea eax, [esi + edx]
cdq
idiv esi
mov byte [ebp + ecx - 0x228], dl
inc ecx
jmp 0x45d6f6
mov byte [ebp - 0x221], bl
lea eax, [ebp - 0x228]
push eax
call fcn.0040f475
pop ecx
push eax
lea eax, [ebp - 0x228]
jmp 0x45d9ab
xor eax, eax
lea edi, [ebp - 0x46c]
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
movaps xmm0, xmmword [0x746070]
movups xmmword [ebp - 0x460], xmm0
movaps xmm0, xmmword [0x748a90]
movups xmmword [ebp - 0x450], xmm0
mov dword [ebp - 0x440], 0x59
mov dword [ebp - 0x43c], 0x2d
mov ecx, ebx
mov dword [ebp - 0x14c], ecx
cmp ecx, 0xa
jae 0x45d7aa
mov eax, dword [ebp + ecx*4 - 0x460]
sub eax, 0x57
imul eax, eax, 0x37
cdq
idiv esi
lea eax, [esi + edx]
cdq
idiv esi
mov byte [ebp + ecx - 0x46c], dl
inc ecx
jmp 0x45d77f
mov byte [ebp - 0x462], bl
lea eax, [ebp - 0x46c]
push eax
call fcn.0040f475
pop ecx
push eax
lea eax, [ebp - 0x46c]
jmp 0x45d9ab
mov dword [ebp - 0x24c], ebx
mov dword [ebp - 0x248], ebx
movaps xmm0, xmmword [0x748050]
movups xmmword [ebp - 0x244], xmm0
mov dword [ebp - 0x234], 0x53
mov dword [ebp - 0x230], 0x5e
mov dword [ebp - 0x22c], 0x68
mov ecx, ebx
mov dword [ebp - 0x150], ecx
cmp ecx, 7
jae 0x45d82e
mov eax, dword [ebp + ecx*4 - 0x244]
sub eax, 0x6a
imul eax, eax, 0xc
cdq
idiv esi
lea eax, [esi + edx]
cdq
idiv esi
mov byte [ebp + ecx - 0x24c], dl
inc ecx
jmp 0x45d803
mov byte [ebp - 0x245], bl
lea eax, [ebp - 0x24c]
push eax
call fcn.0040f475
pop ecx
push eax
lea eax, [ebp - 0x24c]
jmp 0x45d9ab
xor eax, eax
lea edi, [ebp - 0x4f8]
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosb byte es:[edi], al
movaps xmm0, xmmword [0x747af0]
movups xmmword [ebp - 0x4ec], xmm0
movaps xmm0, xmmword [0x748e00]
movups xmmword [ebp - 0x4dc], xmm0
mov ecx, ebx
mov dword [ebp - 0x154], ecx
cmp ecx, 8
jae 0x45d8a1
mov eax, dword [ebp + ecx*4 - 0x4ec]
sub eax, 0x45
imul eax, eax, 7
cdq
idiv esi
lea eax, [esi + edx]
cdq
idiv esi
mov byte [ebp + ecx - 0x4f8], dl
inc ecx
jmp 0x45d876
mov byte [ebp - 0x4f0], bl
lea eax, [ebp - 0x4f8]
push eax
call fcn.0040f475
pop ecx
push eax
lea eax, [ebp - 0x4f8]
jmp 0x45d9ab
xor eax, eax
lea edi, [ebp - 0x404]
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosb byte es:[edi], al
movaps xmm0, xmmword [0x746f40]
movups xmmword [ebp - 0x3f8], xmm0
movaps xmm0, xmmword [0x7491b0]
movups xmmword [ebp - 0x3e8], xmm0
mov ecx, ebx
mov dword [ebp - 0x158], ecx
cmp ecx, 8
jae 0x45d914
push 0x3c
pop eax
sub eax, dword [ebp + ecx*4 - 0x3f8]
imul eax, eax, 0x23
cdq
idiv esi
lea eax, [esi + edx]
cdq
idiv esi
mov byte [ebp + ecx - 0x404], dl
inc ecx
jmp 0x45d8e9
mov byte [ebp - 0x3fc], bl
lea eax, [ebp - 0x404]
push eax
call fcn.0040f475
pop ecx
push eax
lea eax, [ebp - 0x404]
jmp 0x45d9ab
mov dword [ebp - 0x270], ebx
mov dword [ebp - 0x26c], ebx
movaps xmm0, xmmword [0x746be0]
movups xmmword [ebp - 0x268], xmm0
mov dword [ebp - 0x258], 0x39
mov dword [ebp - 0x254], 0x72
mov dword [ebp - 0x250], edi
mov ecx, ebx
mov dword [ebp - 0x15c], ecx
cmp ecx, 7
jae 0x45d991
mov eax, dword [ebp + ecx*4 - 0x268]
sub eax, 0x25
imul eax, eax, 0x1f
cdq
idiv esi
lea eax, [esi + edx]
cdq
idiv esi
mov byte [ebp + ecx - 0x270], dl
inc ecx
jmp 0x45d966
mov byte [ebp - 0x269], bl
lea eax, [ebp - 0x270]
push eax
call fcn.0040f475
pop ecx
push eax
lea eax, [ebp - 0x270]
push eax
lea ecx, [ebp - 0x6c]
call fcn.00411ddd
lea eax, [ebp - 0x6c]
push eax
push str._status_
lea ecx, [ebp - 0x404]
call fcn.00493d1c
mov ecx, eax
call fcn.00493cea
mov edx, eax
lea ecx, [ebp - 0x84]
call fcn.004b0946
pop ecx
mov dword [ebp - 0xbc], eax
mov byte [ebp - 4], 0x22
xor eax, eax
lea edi, [ebp - 0x4cc]
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosw word es:[edi], ax
movaps xmm0, xmmword [0x745ad0]
movups xmmword [ebp - 0x4c0], xmm0
movaps xmm0, xmmword [0x747fc0]
movups xmmword [ebp - 0x4b0], xmm0
mov dword [ebp - 0x4a0], 0xe
mov ecx, ebx
mov dword [ebp - 0x160], ecx
cmp ecx, 9
jae 0x45da46
mov eax, dword [ebp + ecx*4 - 0x4c0]
sub eax, 0x27
imul eax, eax, 0x1c
cdq
idiv esi
lea eax, [esi + edx]
cdq
idiv esi
mov byte [ebp + ecx - 0x4cc], dl
inc ecx
jmp 0x45da1b
mov byte [ebp - 0x4c3], bl
lea eax, [ebp - 0x4cc]
push eax
mov edx, dword [ebp - 0xbc]
lea ecx, [ebp - 0x54]
call fcn.0041cdde
pop ecx
mov byte [ebp - 4], 0x23
push 0xffffffffffffffff
push ebx
push eax
lea ecx, [ebp - 0x3c]
call fcn.00411fef
mov byte [ebp - 4], 0x22
push ebx
push 1
lea ecx, [ebp - 0x54]
call fcn.00411bc8
mov byte [ebp - 4], 0x21
push ebx
push 1
lea ecx, [ebp - 0x84]
call fcn.00411bc8
lea eax, [ebp - 0x88]
push eax
push ebx
push ebx
mov edi, dword [ebp - 0xc4]
push edi
mov esi, dword [sym.imp.ADVAPI32.dll_QueryServiceConfigW]
call esi
test eax, eax
jne 0x45db36
call dword [sym.imp.KERNEL32.DLL_GetLastError]
cmp eax, 0x7a
jne 0x45dade
mov eax, dword [ebp - 0x88]
mov dword [ebp - 0xc0], eax
push eax
push ebx
call dword [sym.imp.KERNEL32.DLL_GetProcessHeap]
push eax
call dword [sym.imp.KERNEL32.DLL_HeapAlloc]
mov dword [ebp - 0x20], eax
jmp 0x45db38
push edi
mov esi, dword [sym.imp.ADVAPI32.dll_CloseServiceHandle]
call esi
push dword [ebp - 0x1c]
call esi
mov esi, dword [ebp - 0x24]
mov dword [esi + 0x10], ebx
mov dword [esi + 0x14], ebx
mov dword [esi + 0x14], 0xf
mov dword [esi + 0x10], ebx
cmp dword [esi + 0x14], 0x10
jb 0x45db09
mov eax, dword [esi]
jmp 0x45db0b
mov eax, esi
mov byte [eax], bl
lea eax, [ebp - 0x3c]
push eax
mov ecx, esi
call fcn.0041208e
mov eax, dword [ebp - 0x18]
xor edi, edi
inc edi
or eax, edi
mov dword [ebp - 0x18], eax
mov byte [ebp - 4], 4
push ebx
push edi
lea ecx, [ebp - 0x6c]
call fcn.00411bc8
jmp 0x45c9f3
mov eax, ebx
lea ecx, [ebp - 0x88]
push ecx
push dword [ebp - 0xc0]
push eax
push edi
call esi
test eax, eax
je 0x45e308
push 0x73b9d0
lea ecx, [ebp - 0x4c]
call fcn.00493ca5
mov ecx, eax
call fcn.00493c73
mov esi, eax
push esi
call fcn.0040f475
pop ecx
push eax
push esi
lea ecx, [ebp - 0x6c]
call fcn.00411ddd
mov edi, dword [ebp - 0x20]
mov eax, dword [edi + 4]
sub eax, ebx
je 0x45dce9
sub eax, 1
je 0x45dca1
sub eax, 1
je 0x45dc20
sub eax, 1
je 0x45dbd7
sub eax, 1
push ecx
je 0x45dbb7
lea ecx, [ebp - 0x1e4]
call fcn.00493b40
mov ecx, eax
call fcn.00493b0e
jmp 0x45dbc9
lea ecx, [ebp - 0x404]
call fcn.00493ba6
mov ecx, eax
call fcn.00493b74
push eax
lea ecx, [ebp - 0x6c]
call fcn.004119f6
jmp 0x45dd7c
xor eax, eax
lea edi, [ebp - 0x550]
stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
movaps xmm0, xmmword [0x745890]
movups xmmword [ebp - 0x548], xmm0
mov dword [ebp - 0x538], 0x67
mov dword [ebp - 0x534], 0x33
lea ecx, [ebp - 0x550]
call fcn.00493bec
mov esi, eax
push esi
call fcn.0040f475
pop ecx
push eax
push esi
jmp 0x45dd71
xor eax, eax
lea edi, [ebp - 0x49c]
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosw word es:[edi], ax
movaps xmm0, xmmword [0x745100]
movups xmmword [ebp - 0x490], xmm0
movaps xmm0, xmmword [0x748a10]
movups xmmword [ebp - 0x480], xmm0
mov dword [ebp - 0x470], 0x5a
mov ecx, ebx
push 0x7f
pop esi
mov dword [ebp - 0x164], ecx
cmp ecx, 9
jae 0x45dc82
push 0x3d
pop eax
sub eax, dword [ebp + ecx*4 - 0x490]
imul eax, eax, 0x24
cdq
idiv esi
lea eax, [esi + edx]
cdq
idiv esi
mov byte [ebp + ecx - 0x49c], dl
inc ecx
jmp 0x45dc57
mov byte [ebp - 0x493], bl
lea eax, [ebp - 0x49c]
push eax
call fcn.0040f475
pop ecx
push eax
lea eax, [ebp - 0x49c]
jmp 0x45dd70
push ecx
lea ecx, [ebp - 0x614]
call fcn.00493c1e
mov edi, eax
mov ecx, ebx
push 0x7f
pop esi
mov dword [ebp - 0x168], ecx
cmp ecx, 0xc
jae 0x45dcd8
mov eax, dword [edi + ecx*4 + 0x10]
sub eax, 0x18
imul eax, eax, 0x22
cdq
idiv esi
lea eax, [esi + edx]
cdq
idiv esi
mov byte [ecx + edi], dl
inc ecx
jmp 0x45dcb4
mov byte [edi + 0xc], bl
push edi
call fcn.0040f475
pop ecx
push eax
push edi
jmp 0x45dd71
xor eax, eax
lea edi, [ebp - 0x438]
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
movaps xmm0, xmmword [0x7473d0]
movups xmmword [ebp - 0x42c], xmm0
movaps xmm0, xmmword [0x746b50]
movups xmmword [ebp - 0x41c], xmm0
mov dword [ebp - 0x40c], 0x75
mov dword [ebp - 0x408], 0x48
mov ecx, ebx
push 0x7f
pop esi
mov dword [ebp - 0x16c], ecx
cmp ecx, 0xa
jae 0x45dd56
mov eax, dword [ebp + ecx*4 - 0x42c]
sub eax, 0xf
imul eax, eax, 0x1f
cdq
idiv esi
lea eax, [esi + edx]
cdq
idiv esi
mov byte [ebp + ecx - 0x438], dl
inc ecx
jmp 0x45dd2b
mov byte [ebp - 0x42e], bl
lea eax, [ebp - 0x438]
push eax
call fcn.0040f475
pop ecx
push eax
lea eax, [ebp - 0x438]
push eax
lea ecx, [ebp - 0x6c]
call fcn.00411ddd
mov edi, dword [ebp - 0x20]
lea eax, [ebp - 0x6c]
push eax
push str._startup_
lea ecx, [ebp - 0x4cc]
call fcn.0049cf56
mov ecx, eax
call fcn.0049cf24
mov edx, eax
lea ecx, [ebp - 0x84]
call fcn.004b0946
mov esi, eax
mov byte [ebp - 4], 0x24
lea ecx, [ebp - 0x438]
call fcn.00493ac0
mov ecx, eax
call fcn.00493a8e
push eax
mov edx, esi
lea ecx, [ebp - 0x54]
call fcn.0041cdde
pop ecx
mov byte [ebp - 4], 0x25
push 0xffffffffffffffff
push ebx
push eax
lea ecx, [ebp - 0x3c]
call fcn.00411fef
mov byte [ebp - 4], 0x24
push ebx
push 1
lea ecx, [ebp - 0x54]
call fcn.00411bc8
mov byte [ebp - 4], 0x21
push ebx
push 1
lea ecx, [ebp - 0x84]
call fcn.00411bc8
mov dword [ebp - 0x7c], ebx
mov dword [ebp - 0x78], 2
mov dword [ebp - 0x74], 0x6e
mov dword [ebp - 0x70], 0x23
lea ecx, [ebp - 0x7c]
call fcn.00493a5c
push eax
lea ecx, [ebp - 0x6c]
call fcn.004119f6
mov eax, dword [edi]
cmp eax, 0x10
ja 0x45debd
je 0x45dea8
sub eax, 1
je 0x45de90
sub eax, 1
je 0x45de78
dec eax
sub eax, 1
je 0x45de60
sub eax, 4
jne 0x45df31
push ecx
lea ecx, [ebp - 0x5cc]
call fcn.0049384b
mov ecx, eax
call fcn.00493819
jmp 0x45df28
push ecx
lea ecx, [ebp - 0x1e4]
call fcn.004938ed
mov ecx, eax
call fcn.004938bb
jmp 0x45df28
push ecx
lea ecx, [ebp - 0x5d0]
call fcn.0049395c
mov ecx, eax
call fcn.0049392a
jmp 0x45df28
push ecx
lea ecx, [ebp - 0x618]
call fcn.00493a03
mov ecx, eax
call fcn.004939d1
jmp 0x45df28
push ecx
lea ecx, [ebp - 0x618]
call fcn.004937b3
mov ecx, eax
call fcn.00493781
jmp 0x45df28
cmp eax, 0x20
je 0x45df15
cmp eax, 0x30
je 0x45dee3
cmp eax, 0x100
jne 0x45df31
push ecx
lea ecx, [ebp - 0x5d4]
call fcn.00493624
mov ecx, eax
call fcn.004935f2
jmp 0x45df28
mov dword [ebp - 0x514], ebx
mov word [ebp - 0x510], bx
movaps xmm0, xmmword [0x748c80]
movups xmmword [ebp - 0x50c], xmm0
mov dword [ebp - 0x4fc], 0x25
lea ecx, [ebp - 0x514]
call fcn.0049369e
jmp 0x45df28
push ecx
lea ecx, [ebp - 0x5d4]
call fcn.00493702
mov ecx, eax
call fcn.004936d0
push eax
lea ecx, [ebp - 0x6c]
call fcn.004119f6
lea eax, [ebp - 0x6c]
push eax
push ecx
lea ecx, [ebp - 0x204]
call fcn.004935b9
mov ecx, eax
call fcn.00493587
mov edx, eax
lea ecx, [ebp - 0x84]
call fcn.004b0946
mov esi, eax
mov byte [ebp - 4], 0x26
mov dword [esp], str.__type_
lea ecx, [ebp - 0x1e4]
call fcn.00493500
mov ecx, eax
call fcn.004934ce
push eax
mov edx, esi
lea ecx, [ebp - 0x54]
call fcn.0041cdde
pop ecx
mov byte [ebp - 4], 0x27
push 0xffffffffffffffff
push ebx
push eax
lea ecx, [ebp - 0x3c]
call fcn.00411fef
mov byte [ebp - 4], 0x26
push ebx
push 1
lea ecx, [ebp - 0x54]
call fcn.00411bc8
mov byte [ebp - 4], 0x21
push ebx
push 1
lea ecx, [ebp - 0x84]
call fcn.00411bc8
mov dword [ebp - 0x4c], ebx
mov dword [ebp - 0x48], 0x70
mov dword [ebp - 0x44], 0x31
mov dword [ebp - 0x40], 0x3d
lea ecx, [ebp - 0x4c]
call fcn.0049349c
push eax
lea ecx, [ebp - 0x6c]
call fcn.004119f6
mov eax, dword [edi + 8]
sub eax, ebx
je 0x45e046
sub eax, 1
je 0x45e02d
sub eax, 1
push ecx
je 0x45e019
sub eax, 1
je 0x45e005
lea ecx, [ebp - 0x1e4]
call fcn.0049325f
mov ecx, eax
call fcn.0049322d
jmp 0x45e059
lea ecx, [ebp - 0x790]
call fcn.004932c5
mov ecx, eax
call fcn.00493293
jmp 0x45e059
lea ecx, [ebp - 0x6c8]
call fcn.0049337d
mov ecx, eax
call fcn.0049334b
jmp 0x45e059
push str.No_error_control
lea ecx, [ebp - 0x5c8]
call fcn.0049ccff
mov ecx, eax
call fcn.0049cccd
jmp 0x45e059
push ecx
lea ecx, [ebp - 0x6cc]
call fcn.00493422
mov ecx, eax
call fcn.004933f0
push eax
lea ecx, [ebp - 0x6c]
call fcn.004119f6
mov dword [ebp - 0x530], ebx
mov word [ebp - 0x52c], bx
movaps xmm0, xmmword [0x748d70]
movups xmmword [ebp - 0x528], xmm0
mov dword [ebp - 0x518], 0x59
lea eax, [ebp - 0x6c]
push eax
lea ecx, [ebp - 0x530]
call fcn.004931fb
mov edx, eax
lea ecx, [ebp - 0x84]
call fcn.004b0946
pop ecx
mov esi, eax
mov byte [ebp - 4], 0x28
xor eax, eax
lea edi, [ebp - 0x204]
stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
movaps xmm0, xmmword [0x7479b0]
movups xmmword [ebp - 0x1fc], xmm0
mov dword [ebp - 0x1ec], 0x53
mov dword [ebp - 0x1e8], 0x6a
lea ecx, [ebp - 0x204]
call fcn.004931c9
push eax
mov edx, esi
lea ecx, [ebp - 0x54]
call fcn.0041cdde
pop ecx
mov byte [ebp - 4], 0x29
push 0xffffffffffffffff
push ebx
push eax
lea ecx, [ebp - 0x3c]
call fcn.00411fef
mov byte [ebp - 4], 0x28
push ebx
push 1
lea ecx, [ebp - 0x54]
call fcn.00411bc8
mov byte [ebp - 4], 0x21
push ebx
push 1
lea ecx, [ebp - 0x84]
call fcn.00411bc8
mov edi, dword [ebp - 0x20]
push dword [edi + 0xc]
lea ecx, [ebp - 0x54]
call fcn.004a63fc
mov byte [ebp - 4], 0x2a
lea edx, [ebp - 0x54]
lea ecx, [ebp - 0xdc]
call fcn.00461197
mov byte [ebp - 4], 0x2b
mov edx, eax
lea ecx, [ebp - 0xb8]
call fcn.00460888
mov byte [ebp - 4], 0x2c
push eax
push str._path_
lea ecx, [ebp - 0x204]
call fcn.00499a1e
mov ecx, eax
call fcn.004999ec
mov edx, eax
lea ecx, [ebp - 0xa0]
call fcn.004b09c3
mov esi, eax
mov byte [ebp - 4], 0x2d
lea ecx, [ebp - 0x1e4]
call fcn.0049318c
mov ecx, eax
call fcn.0049315a
push eax
mov edx, esi
lea ecx, [ebp - 0x84]
call fcn.0041cdde
pop ecx
mov byte [ebp - 4], 0x2e
push 0xffffffffffffffff
push ebx
push eax
lea ecx, [ebp - 0x3c]
call fcn.00411fef
mov byte [ebp - 4], 0x2d
push ebx
xor esi, esi
inc esi
push esi
lea ecx, [ebp - 0x84]
call fcn.00411bc8
mov byte [ebp - 4], 0x2c
push ebx
push esi
lea ecx, [ebp - 0xa0]
call fcn.00411bc8
mov byte [ebp - 4], 0x2b
push ebx
push esi
lea ecx, [ebp - 0xb8]
call fcn.00411bc8
mov byte [ebp - 4], 0x2a
push ebx
push esi
lea ecx, [ebp - 0xdc]
call fcn.00411bc8
mov byte [ebp - 4], 0x21
push ebx
push esi
lea ecx, [ebp - 0x54]
call fcn.004ab703
push dword [edi + 0x18]
lea ecx, [ebp - 0x54]
call fcn.004a63fc
mov byte [ebp - 4], 0x2f
lea edx, [ebp - 0x54]
lea ecx, [ebp - 0xdc]
call fcn.00461197
mov byte [ebp - 4], 0x30
mov edx, eax
lea ecx, [ebp - 0xb8]
call fcn.00460888
mov byte [ebp - 4], 0x31
mov dword [ebp - 0x358], ebx
mov word [ebp - 0x354], bx
movaps xmm0, xmmword [0x7474f0]
movups xmmword [ebp - 0x350], xmm0
mov dword [ebp - 0x340], 0x69
push eax
lea ecx, [ebp - 0x358]
call fcn.00493128
mov edx, eax
lea ecx, [ebp - 0xa0]
call fcn.004b09c3
mov esi, eax
mov byte [ebp - 4], 0x32
lea ecx, [ebp - 0x204]
call fcn.004930ef
mov ecx, eax
call fcn.004930bd
push eax
mov edx, esi
lea ecx, [ebp - 0x84]
call fcn.0041cdde
pop ecx
mov byte [ebp - 4], 0x33
push 0xffffffffffffffff
push ebx
push eax
lea ecx, [ebp - 0x3c]
call fcn.00411fef
mov byte [ebp - 4], 0x32
push ebx
xor esi, esi
inc esi
push esi
lea ecx, [ebp - 0x84]
call fcn.00411bc8
mov byte [ebp - 4], 0x31
push ebx
push esi
lea ecx, [ebp - 0xa0]
call fcn.00411bc8
mov byte [ebp - 4], 0x30
push ebx
push esi
lea ecx, [ebp - 0xb8]
call fcn.00411bc8
mov byte [ebp - 4], 0x2f
push ebx
push esi
lea ecx, [ebp - 0xdc]
call fcn.00411bc8
mov byte [ebp - 4], 0x21
push ebx
push esi
lea ecx, [ebp - 0x54]
call fcn.004ab703
mov edi, dword [ebp - 0xc4]
push dword [ebp - 0x20]
push ebx
call dword [sym.imp.KERNEL32.DLL_GetProcessHeap]
push eax
call dword [sym.imp.KERNEL32.DLL_HeapFree]
push edi
mov esi, dword [sym.imp.ADVAPI32.dll_CloseServiceHandle]
call esi
push dword [ebp - 0x1c]
call esi
lea eax, [ebp - 0x3c]
push eax
mov esi, dword [ebp - 0x24]
mov ecx, esi
call fcn.00411a44
jmp 0x45db18