Function at 0x620a00
Capabilities:
Check for time delay via gettickcount
Delete service
Encode data using xor
Query service status
Stop service

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x7b3e66
mov eax, dword fs:[0]
push eax
sub esp, 0x26c
mov eax, dword [0x831184]
xor eax, ebp
mov dword [ebp - 0x10], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0xe4], 0
push 0xb0
lea eax, [ebp - 0xc0]
mov dword [ebp - 4], 0
push 0
push eax
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
mov dword [ebp - 0xc0], 0x7d6f90
lea ecx, [ebp - 0x58]
mov dword [ebp - 0xb0], 0x7d7228
call dword [sym.imp.MSVCP140.dll_protected:_void___thiscall_std::basic_ios_wchar_t__struct_std::char_traits_wchar_t__::constructor_void_]
push 0
lea eax, [ebp - 0xa8]
mov byte [ebp - 4], 1
push eax
lea ecx, [ebp - 0xc0]
mov dword [ebp - 0xe4], 1
call dword [sym.imp.MSVCP140.dll_public:_void___thiscall_std::basic_iostream_wchar_t__struct_std::char_traits_wchar_t__::constructor_class_std::basic_streambuf_wchar_t__struct_std::char_traits_wchar_t____]
mov dword [ebp - 4], 2
mov eax, dword [ebp - 0xc0]
mov eax, dword [eax + 4]
mov dword [ebp + eax - 0xc0], 0x7c81a4
mov eax, dword [ebp - 0xc0]
mov ecx, dword [eax + 4]
lea eax, [ecx - 0x68]
mov dword [ebp + ecx - 0xc4], eax
lea ecx, [ebp - 0xa8]
call dword [sym.imp.MSVCP140.dll_protected:_void___thiscall_std::basic_streambuf_wchar_t__struct_std::char_traits_wchar_t__::constructor_void_]
mov dword [ebp - 0xa8], 0x7c8164
mov dword [ebp - 0x70], 0
mov dword [ebp - 0x6c], 0
mov byte [ebp - 4], 3
mov eax, 0x12
mov dword [ebp - 0x114], eax
xor ecx, ecx
mov dword [ebp - 0x110], 0xcf00fb
mov dword [ebp - 0x10c], 0xc300c6
mov dword [ebp - 0x108], 0xc700db
mov dword [ebp - 0x104], 0xd700c1
mov dword [ebp - 0x100], 0xc10091
mov dword [ebp - 0xfc], 0xc600d6
mov dword [ebp - 0xf8], 0xdf00c3
mov dword [ebp - 0xf4], 0xdd00d4
mov dword [ebp - 0xf0], 0x9a0083
mov dword [ebp - 0xec], 0xbb
nop dword [eax + eax]
lea eax, [ecx + 0xa9]
xor word [ebp + ecx*2 - 0x110], ax
inc ecx
mov eax, dword [ebp - 0x114]
cmp ecx, eax
jb 0x620b60
xor ecx, ecx
mov word [ebp + eax*2 - 0x110], cx
lea eax, [ebp - 0x110]
push eax
lea eax, [ebp - 0xb0]
push eax
call fcn.00404740
mov ecx, dword [ebp + 8]
add esp, 8
add ecx, 4
mov esi, eax
push ecx
lea ecx, [ebp - 0x13c]
call fcn.00404120
mov edi, 3
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x13c]
cmp dword [ebp - 0x128], 8
push dword [ebp - 0x12c]
cmovae ecx, dword [ebp - 0x13c]
push ecx
push esi
call fcn.00404c80
add esp, 0xc
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x13c]
call fcn.00404490
mov edx, dword [0x83ff50]
mov dword [ebp - 0xe4], edx
test edx, edx
jne 0x620c3a
push 0x20
call fcn.0076e8c3
mov edx, eax
xorps xmm0, xmm0
mov dword [ebp - 0x120], edx
add esp, 4
xor eax, eax
mov dword [ebp - 0xe4], edx
movups xmmword [edx], xmm0
movups xmmword [edx + 0x10], xmm0
mov dword [edx + 0x10], 0
mov dword [edx + 0x14], 7
mov word [edx], ax
mov dword [edx + 0x18], eax
mov dword [edx + 0x1c], eax
mov dword [0x83ff50], edx
lea eax, [ebp - 0x1d8]
push eax
call fcn.00621690
mov dword [ebp - 0xe8], eax
mov esi, dword [eax]
lea ecx, [eax + 4]
mov dword [ebp - 0x124], ecx
xor ecx, ecx
test esi, esi
je 0x620c81
mov edx, dword [ebp - 0x124]
mov edi, eax
lea eax, [ecx + 0xa9]
xor word [edx + ecx*2], ax
inc ecx
mov esi, dword [edi]
cmp ecx, esi
jb 0x620c65
mov edx, dword [ebp - 0xe4]
mov edi, 3
mov eax, dword [ebp - 0x124]
xor ecx, ecx
mov word [eax + esi*2], cx
lea eax, [ebp - 0x278]
push eax
call fcn.0061f9f0
mov dword [ebp - 0x120], eax
mov esi, dword [eax]
lea ecx, [eax + 4]
mov dword [ebp - 0xe8], ecx
xor ecx, ecx
test esi, esi
je 0x620cdc
mov edx, dword [ebp - 0xe8]
mov edi, eax
nop dword [eax + eax]
lea eax, [ecx + 0xa9]
xor word [edx + ecx*2], ax
inc ecx
mov esi, dword [edi]
cmp ecx, esi
jb 0x620cc0
mov edx, dword [ebp - 0xe4]
mov edi, 3
mov eax, dword [ebp - 0xe8]
xor ecx, ecx
mov word [eax + esi*2], cx
lea ecx, [ebp - 0xc0]
push ecx
push dword [ebp - 0x124]
mov ecx, edx
push 0x9a
push eax
push 1
call fcn.00469f50
mov byte [ebp - 4], 0
mov eax, dword [ebp - 0xc0]
mov eax, dword [eax + 4]
mov dword [ebp + eax - 0xc0], 0x7c81a4
mov eax, dword [ebp - 0xc0]
mov ecx, dword [eax + 4]
lea eax, [ecx - 0x68]
mov dword [ebp + ecx - 0xc4], eax
lea ecx, [ebp - 0xa8]
call fcn.004073e0
lea ecx, [ebp - 0xa0]
call dword [sym.imp.MSVCP140.dll_public_virtual:_void___thiscall_std::basic_iostream_wchar_t__struct_std::char_traits_wchar_t__::destructor_void_]
lea ecx, [ebp - 0x58]
call dword [sym.imp.MSVCP140.dll_public_virtual:_void___thiscall_std::basic_ios_wchar_t__struct_std::char_traits_wchar_t__::destructor_void_]
call fcn.00424580
test eax, eax
je 0x620d8e
mov eax, dword [ebp + 8]
lea ecx, [ebp - 0x13c]
add eax, 4
push eax
call fcn.00404120
mov edi, 7
lea eax, [ebp - 0x13c]
mov byte [ebp - 4], 5
push eax
call fcn.00621cd0
lea ecx, [ebp - 0x13c]
mov byte [ebp - 4], 0
call fcn.00404490
push 0xf003f
push 0
push 0
call dword [sym.imp.ADVAPI32.dll_OpenSCManagerW]
mov esi, eax
mov dword [ebp - 0x124], esi
test esi, esi
jne 0x620fd7
push 0xb0
push eax
lea eax, [ebp - 0xc0]
push eax
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
mov dword [ebp - 0xc0], 0x7d6f90
lea ecx, [ebp - 0x58]
mov dword [ebp - 0xb0], 0x7d7228
call dword [sym.imp.MSVCP140.dll_protected:_void___thiscall_std::basic_ios_wchar_t__struct_std::char_traits_wchar_t__::constructor_void_]
push esi
lea eax, [ebp - 0xa8]
mov byte [ebp - 4], 6
or edi, 8
lea ecx, [ebp - 0xc0]
push eax
mov dword [ebp - 0xe4], edi
call dword [sym.imp.MSVCP140.dll_public:_void___thiscall_std::basic_iostream_wchar_t__struct_std::char_traits_wchar_t__::constructor_class_std::basic_streambuf_wchar_t__struct_std::char_traits_wchar_t____]
mov dword [ebp - 4], 7
mov eax, dword [ebp - 0xc0]
mov eax, dword [eax + 4]
mov dword [ebp + eax - 0xc0], 0x7c81a4
mov eax, dword [ebp - 0xc0]
mov ecx, dword [eax + 4]
lea eax, [ecx - 0x68]
mov dword [ebp + ecx - 0xc4], eax
lea ecx, [ebp - 0xa8]
call dword [sym.imp.MSVCP140.dll_protected:_void___thiscall_std::basic_streambuf_wchar_t__struct_std::char_traits_wchar_t__::constructor_void_]
mov dword [ebp - 0xa8], 0x7c8164
mov dword [ebp - 0x70], esi
mov dword [ebp - 0x6c], esi
mov byte [ebp - 4], 8
xor ecx, ecx
mov dword [ebp - 0x118], 0x15
mov dword [ebp - 0x114], 0xda00e6
mov dword [ebp - 0x110], 0xc200ce
mov dword [ebp - 0x10c], 0xed00fe
mov dword [ebp - 0x108], 0xd100e2
mov dword [ebp - 0x104], 0xd300df
mov dword [ebp - 0x100], 0xd100d4
mov dword [ebp - 0xfc], 0x9a00c7
mov dword [ebp - 0xf8], 0xdd0097
mov dword [ebp - 0xf4], 0xc800cb
mov dword [ebp - 0xf0], 0xce00d4
mov dword [ebp - 0xec], 0xbe009d
nop dword [eax + eax]
lea eax, [ecx + 0xa9]
xor word [ebp + ecx*2 - 0x114], ax
inc ecx
mov eax, dword [ebp - 0x118]
cmp ecx, eax
jb 0x620ed0
xor ecx, ecx
mov word [ebp + eax*2 - 0x114], cx
lea eax, [ebp - 0x114]
push eax
lea eax, [ebp - 0xb0]
push eax
call fcn.00404740
add esp, 8
mov esi, eax
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
mov ecx, esi
call dword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t______thiscall_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t__::operator___unsigned_long_int_]
call fcn.004345f0
mov dword [ebp - 0xe8], eax
lea eax, [ebp - 0x1d8]
push eax
call fcn.006217d0
mov edi, eax
xor ecx, ecx
mov edx, dword [edi]
lea esi, [edi + 4]
mov dword [ebp - 0x120], esi
test edx, edx
je 0x620f55
lea eax, [ecx + 0xa9]
xor word [esi + ecx*2], ax
inc ecx
mov edx, dword [edi]
cmp ecx, edx
jb 0x620f44
xor eax, eax
mov word [esi + edx*2], ax
lea eax, [ebp - 0x278]
push eax
call fcn.0061f9f0
mov esi, eax
xor ecx, ecx
mov edx, dword [esi]
lea edi, [esi + 4]
test edx, edx
je 0x620f85
lea eax, [ecx + 0xa9]
xor word [edi + ecx*2], ax
inc ecx
mov edx, dword [esi]
cmp ecx, edx
jb 0x620f74
mov ecx, dword [ebp - 0xe8]
xor eax, eax
mov word [edi + edx*2], ax
lea eax, [ebp - 0xc0]
push eax
push dword [ebp - 0x120]
push 0xa4
push edi
push 0
call fcn.00469f50
mov eax, dword [ebp - 0xc0]
mov eax, dword [eax + 4]
mov dword [ebp + eax - 0xc0], 0x7c81a4
mov eax, dword [ebp - 0xc0]
mov ecx, dword [eax + 4]
lea eax, [ecx - 0x68]
mov dword [ebp + ecx - 0xc4], eax
jmp 0x6211f7
mov eax, dword [ebp + 8]
lea ecx, [ebp - 0x13c]
add eax, 4
push eax
call fcn.00404120
or edi, 0x10
lea eax, [ebp - 0x13c]
cmp dword [ebp - 0x128], 8
push 0xf01ff
cmovae eax, dword [ebp - 0x13c]
push eax
push esi
call dword [sym.imp.ADVAPI32.dll_OpenServiceW]
mov esi, eax
lea ecx, [ebp - 0x13c]
mov dword [ebp - 0xe8], esi
call fcn.00404490
test esi, esi
jne 0x62121e
push 0xb0
lea eax, [ebp - 0xc0]
push esi
push eax
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
mov dword [ebp - 0xc0], 0x7d6f90
lea ecx, [ebp - 0x58]
mov dword [ebp - 0xb0], 0x7d7228
call dword [sym.imp.MSVCP140.dll_protected:_void___thiscall_std::basic_ios_wchar_t__struct_std::char_traits_wchar_t__::constructor_void_]
push esi
lea eax, [ebp - 0xa8]
mov byte [ebp - 4], 0xa
or edi, 0x20
lea ecx, [ebp - 0xc0]
push eax
mov dword [ebp - 0xe4], edi
call dword [sym.imp.MSVCP140.dll_public:_void___thiscall_std::basic_iostream_wchar_t__struct_std::char_traits_wchar_t__::constructor_class_std::basic_streambuf_wchar_t__struct_std::char_traits_wchar_t____]
mov dword [ebp - 4], 0xb
mov eax, dword [ebp - 0xc0]
mov eax, dword [eax + 4]
mov dword [ebp + eax - 0xc0], 0x7c81a4
mov eax, dword [ebp - 0xc0]
mov ecx, dword [eax + 4]
lea eax, [ecx - 0x68]
mov dword [ebp + ecx - 0xc4], eax
lea ecx, [ebp - 0xa8]
call dword [sym.imp.MSVCP140.dll_protected:_void___thiscall_std::basic_streambuf_wchar_t__struct_std::char_traits_wchar_t__::constructor_void_]
mov dword [ebp - 0xa8], 0x7c8164
mov dword [ebp - 0x70], esi
mov dword [ebp - 0x6c], esi
mov byte [ebp - 4], 0xc
xor ecx, ecx
mov dword [ebp - 0x114], 0x13
mov dword [ebp - 0x110], 0xda00e6
mov dword [ebp - 0x10c], 0xc200ce
mov dword [ebp - 0x108], 0xcb00fe
mov dword [ebp - 0x104], 0xc600dd
mov dword [ebp - 0x100], 0xd100d8
mov dword [ebp - 0xfc], 0x9800d6
mov dword [ebp - 0xf8], 0xd30095
mov dword [ebp - 0xf4], 0xca00c5
mov dword [ebp - 0xf0], 0xc800d6
mov dword [ebp - 0xec], 0xbc009b
nop dword [eax]
lea eax, [ecx + 0xa9]
xor word [ebp + ecx*2 - 0x110], ax
inc ecx
mov eax, dword [ebp - 0x114]
cmp ecx, eax
jb 0x621140
xor ecx, ecx
mov word [ebp + eax*2 - 0x110], cx
lea eax, [ebp - 0x110]
push eax
lea eax, [ebp - 0xb0]
push eax
call fcn.00404740
add esp, 8
mov esi, eax
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
mov ecx, esi
call dword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t______thiscall_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t__::operator___unsigned_long_int_]
call fcn.004345f0
mov edi, eax
lea eax, [ebp - 0x1d8]
push eax
call fcn.00621910
mov ecx, eax
call fcn.00403e20
mov esi, eax
lea eax, [ebp - 0x278]
push eax
call fcn.0061f9f0
mov ecx, eax
call fcn.00403e20
lea ecx, [ebp - 0xc0]
push ecx
push esi
push 0xac
push eax
push 0
mov ecx, edi
call fcn.00469f50
mov eax, dword [ebp - 0xc0]
mov eax, dword [eax + 4]
mov dword [ebp + eax - 0xc0], 0x7c81a4
mov eax, dword [ebp - 0xc0]
mov ecx, dword [eax + 4]
lea eax, [ecx - 0x68]
mov dword [ebp + ecx - 0xc4], eax
lea ecx, [ebp - 0xa8]
call fcn.004073e0
lea ecx, [ebp - 0xa0]
call dword [sym.imp.MSVCP140.dll_public_virtual:_void___thiscall_std::basic_iostream_wchar_t__struct_std::char_traits_wchar_t__::destructor_void_]
lea ecx, [ebp - 0x58]
call dword [sym.imp.MSVCP140.dll_public_virtual:_void___thiscall_std::basic_ios_wchar_t__struct_std::char_traits_wchar_t__::destructor_void_]
xor cl, cl
jmp 0x62162e
lea eax, [ebp - 0xdc]
push eax
push 1
push esi
call dword [sym.imp.ADVAPI32.dll_ControlService]
test eax, eax
je 0x6212a4
call dword [sym.imp.KERNEL32.dll_GetTickCount]
cmp dword [ebp - 0xd8], 1
mov dword [ebp - 0x120], eax
je 0x621464
nop dword [eax + eax]
push dword [ebp - 0xc4]
call dword [sym.imp.KERNEL32.dll_Sleep]
lea eax, [ebp - 0xdc]
push eax
push esi
call dword [sym.imp.ADVAPI32.dll_QueryServiceStatus]
test eax, eax
je 0x621464
cmp dword [ebp - 0xd8], 1
je 0x621464
call dword [sym.imp.KERNEL32.dll_GetTickCount]
sub eax, dword [ebp - 0x120]
cmp eax, 0x2710
ja 0x621464
cmp dword [ebp - 0xd8], 1
jne 0x621250
jmp 0x621464
push 0xb0
lea eax, [ebp - 0xc0]
push 0
push eax
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
mov dword [ebp - 0xc0], 0x7d6f90
lea ecx, [ebp - 0x58]
mov dword [ebp - 0xb0], 0x7d7228
call dword [sym.imp.MSVCP140.dll_protected:_void___thiscall_std::basic_ios_wchar_t__struct_std::char_traits_wchar_t__::constructor_void_]
push 0
lea eax, [ebp - 0xa8]
mov byte [ebp - 4], 0xe
or edi, 0x40
lea ecx, [ebp - 0xc0]
push eax
mov dword [ebp - 0x120], edi
mov dword [ebp - 0xe4], edi
call dword [sym.imp.MSVCP140.dll_public:_void___thiscall_std::basic_iostream_wchar_t__struct_std::char_traits_wchar_t__::constructor_class_std::basic_streambuf_wchar_t__struct_std::char_traits_wchar_t____]
mov dword [ebp - 4], 0xf
mov eax, dword [ebp - 0xc0]
mov eax, dword [eax + 4]
mov dword [ebp + eax - 0xc0], 0x7c81a4
mov eax, dword [ebp - 0xc0]
mov ecx, dword [eax + 4]
lea eax, [ecx - 0x68]
mov dword [ebp + ecx - 0xc4], eax
lea ecx, [ebp - 0xa8]
call dword [sym.imp.MSVCP140.dll_protected:_void___thiscall_std::basic_streambuf_wchar_t__struct_std::char_traits_wchar_t__::constructor_void_]
mov dword [ebp - 0xa8], 0x7c8164
mov dword [ebp - 0x70], 0
mov dword [ebp - 0x6c], 0
mov byte [ebp - 4], 0x10
lea ecx, [ebp - 0x11c]
mov dword [ebp - 0x11c], 0x16
mov dword [ebp - 0x118], 0xc500ea
mov dword [ebp - 0x114], 0xd800c5
mov dword [ebp - 0x110], 0xc100df
mov dword [ebp - 0x10c], 0xe300c3
mov dword [ebp - 0x108], 0xc000d4
mov dword [ebp - 0x104], 0xdd00c5
mov dword [ebp - 0x100], 0xd300d6
mov dword [ebp - 0xfc], 0x98009b
mov dword [ebp - 0xf8], 0xc800dc
mov dword [ebp - 0xf4], 0xd300c9
mov dword [ebp - 0xf0], 0x9e00cf
mov dword [ebp - 0xec], 0xbf
call fcn.00403e20
push eax
lea eax, [ebp - 0xb0]
push eax
call fcn.00404740
add esp, 8
mov esi, eax
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
mov ecx, esi
call dword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t______thiscall_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t__::operator___unsigned_long_int_]
call fcn.004345f0
mov edi, eax
lea eax, [ebp - 0x1d8]
push eax
call fcn.00621a50
mov ecx, eax
call fcn.00403e20
mov esi, eax
lea eax, [ebp - 0x278]
push eax
call fcn.0061f9f0
mov ecx, eax
call fcn.00403e20
lea ecx, [ebp - 0xc0]
push ecx
push esi
push 0xc6
push eax
push 0
mov ecx, edi
call fcn.00469f50
lea ecx, [ebp - 0xc0]
mov byte [ebp - 4], 0
call fcn.00406480
mov esi, dword [ebp - 0xe8]
mov edi, dword [ebp - 0x120]
push esi
call dword [sym.imp.ADVAPI32.dll_DeleteService]
test eax, eax
jne 0x62161b
push 0xb0
push eax
lea eax, [ebp - 0xc0]
push eax
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
mov dword [ebp - 0xc0], 0x7d6f90
lea ecx, [ebp - 0x58]
mov dword [ebp - 0xb0], 0x7d7228
call dword [sym.imp.MSVCP140.dll_protected:_void___thiscall_std::basic_ios_wchar_t__struct_std::char_traits_wchar_t__::constructor_void_]
push 0
lea eax, [ebp - 0xa8]
mov byte [ebp - 4], 0x11
or edi, 0x80
lea ecx, [ebp - 0xc0]
push eax
mov dword [ebp - 0xe4], edi
call dword [sym.imp.MSVCP140.dll_public:_void___thiscall_std::basic_iostream_wchar_t__struct_std::char_traits_wchar_t__::constructor_class_std::basic_streambuf_wchar_t__struct_std::char_traits_wchar_t____]
mov dword [ebp - 4], 0x12
mov eax, dword [ebp - 0xc0]
mov eax, dword [eax + 4]
mov dword [ebp + eax - 0xc0], 0x7c81a4
mov eax, dword [ebp - 0xc0]
mov ecx, dword [eax + 4]
lea eax, [ecx - 0x68]
mov dword [ebp + ecx - 0xc4], eax
lea ecx, [ebp - 0xa8]
call dword [sym.imp.MSVCP140.dll_protected:_void___thiscall_std::basic_streambuf_wchar_t__struct_std::char_traits_wchar_t__::constructor_void_]
mov dword [ebp - 0xa8], 0x7c8164
mov dword [ebp - 0x70], 0
mov dword [ebp - 0x6c], 0
mov byte [ebp - 4], 0x13
lea ecx, [ebp - 0x118]
mov dword [ebp - 0x118], 0x15
mov dword [ebp - 0x114], 0xcf00ed
mov dword [ebp - 0x110], 0xc900c7
mov dword [ebp - 0x10c], 0xcb00d9
mov dword [ebp - 0x108], 0xd500fc
mov dword [ebp - 0x104], 0xc400c3
mov dword [ebp - 0x100], 0xd700da
mov dword [ebp - 0xfc], 0x9a00d0
mov dword [ebp - 0xf8], 0xdd0097
mov dword [ebp - 0xf4], 0xc800cb
mov dword [ebp - 0xf0], 0xce00d4
mov dword [ebp - 0xec], 0xbe009d
call fcn.00403e20
push eax
lea eax, [ebp - 0xb0]
push eax
call fcn.00404740
add esp, 8
mov esi, eax
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
mov ecx, esi
call dword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t______thiscall_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t__::operator___unsigned_long_int_]
call fcn.004345f0
mov edi, eax
lea eax, [ebp - 0x1d8]
push eax
call fcn.00621b90
mov ecx, eax
call fcn.00403e20
mov esi, eax
lea eax, [ebp - 0x278]
push eax
call fcn.0061f9f0
mov ecx, eax
call fcn.00403e20
lea ecx, [ebp - 0xc0]
push ecx
push esi
push 0xcc
push eax
push 0
mov ecx, edi
call fcn.00469f50
lea ecx, [ebp - 0xc0]
call fcn.00406480
mov esi, dword [ebp - 0xe8]
push esi
mov esi, dword [sym.imp.ADVAPI32.dll_CloseServiceHandle]
call esi
push dword [ebp - 0x124]
call esi
mov cl, 1
mov byte [ebp - 0xdd], cl
mov dword [ebp - 4], 0x14
mov esi, dword [ebp + 0xc]
test esi, esi
je 0x62166b
or edi, 0xffffffff
mov eax, edi
lock xadd dword [esi + 4], eax
jne 0x62166b
mov eax, dword [esi]
mov ecx, esi
call dword [eax]
lock xadd dword [esi + 8], edi
dec edi
jne 0x621663
mov edx, dword [esi]
mov ecx, esi
call dword [edx + 4]
mov al, byte [ebp - 0xdd]
jmp 0x62166d
mov al, cl
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.0076eb7e
mov esp, ebp
pop ebp
ret 8