Function at 0x42a970
Capabilities:
Delete service
Initialize winsock library
Stop service

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4504d7
mov eax, dword fs:[0]
push eax
sub esp, 0x458
mov eax, dword [0x465024]
xor eax, ebp
mov dword [ebp - 0x10], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov edi, dword [ebp + 0xc]
push 0x30
push 0x32
push 0x30
push 0x31
push str.dragent_version:3.1._c_c_c_c_n
call fcn.00409910
push 0x50
lea eax, [ebp - 0x60]
push 0
push eax
call fcn.004311e0
lea eax, [ebp - 0x45c]
push eax
call fcn.00437d64
lea eax, [ebp - 0x45c]
push eax
call fcn.0043805d
push dword [eax]
mov ecx, dword [eax + 0x10]
push dword [eax + 4]
inc ecx
push dword [eax + 8]
push dword [eax + 0xc]
mov eax, dword [eax + 0x14]
push ecx
add eax, 0x76c
push eax
push str._4d__02d__02d__2d:_2d:_2d
lea eax, [ebp - 0x60]
push 0x50
push eax
call fcn.00408bc0
xorps xmm0, xmm0
mov dword [ebp - 0x280], 0
lea ecx, [ebp - 0x60]
mov dword [ebp - 0x27c], 0
add esp, 0x4c
lea edx, [ecx + 1]
movups xmmword [ebp - 0x290], xmm0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x42aa27
sub ecx, edx
lea eax, [ebp - 0x60]
push ecx
push eax
lea ecx, [ebp - 0x290]
call fcn.004195d0
cmp dword [ebp - 0x27c], 0x10
lea eax, [ebp - 0x290]
cmovae eax, dword [ebp - 0x290]
push eax
push str._s___INFO_dragent_is_initializing__n
call fcn.00409910
mov ecx, dword [ebp - 0x27c]
add esp, 8
cmp ecx, 0x10
jb 0x42aa9c
mov edx, dword [ebp - 0x290]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x42aa92
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x42c414
push ecx
push edx
call fcn.0042f231
add esp, 8
mov ecx, 0x465a98
call fcn.0041a9b0
mov esi, dword [edi]
xorps xmm0, xmm0
test esi, esi
jne 0x42aad2
movups xmmword [ebp - 0x278], xmm0
mov dword [ebp - 0x268], esi
mov dword [ebp - 0x264], 0xf
mov byte [ebp - 0x278], 0
jmp 0x42abb6
movups xmmword [ebp - 0x290], xmm0
mov dword [ebp - 0x280], 0
mov dword [ebp - 0x27c], 0xf
mov byte [ebp - 0x290], 0
push 0x2f
push esi
mov dword [ebp - 4], 0
call fcn.00430780
add esp, 8
test eax, eax
je 0x42ab39
sub eax, esi
lea ecx, [ebp - 0x290]
push eax
push esi
call fcn.00409740
movups xmm0, xmmword [ebp - 0x290]
movups xmmword [ebp - 0x278], xmm0
movq xmm0, qword [ebp - 0x280]
movq qword [ebp - 0x268], xmm0
jmp 0x42abb6
push 0x5c
push esi
call fcn.00430780
add esp, 8
test eax, eax
je 0x42ab77
sub eax, esi
lea ecx, [ebp - 0x290]
push eax
push esi
call fcn.00409740
movups xmm0, xmmword [ebp - 0x290]
movups xmmword [ebp - 0x278], xmm0
movq xmm0, qword [ebp - 0x280]
movq qword [ebp - 0x268], xmm0
jmp 0x42abb6
mov ecx, esi
mov dword [ebp - 0x268], 0
xorps xmm0, xmm0
mov dword [ebp - 0x264], 0
movups xmmword [ebp - 0x278], xmm0
lea edx, [ecx + 1]
nop word [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x42aba0
sub ecx, edx
push ecx
push esi
lea ecx, [ebp - 0x278]
call fcn.004195d0
mov dword [ebp - 4], 1
mov edx, dword [ebp - 0x264]
mov eax, edx
mov ecx, dword [ebp - 0x268]
sub eax, ecx
push 9
push str._dragent_
cmp eax, 9
jb 0x42ac09
cmp edx, 0x10
lea esi, [ebp - 0x278]
lea eax, [ecx + 9]
cmovae esi, dword [ebp - 0x278]
add esi, ecx
mov dword [ebp - 0x268], eax
push esi
call fcn.00430c60
add esp, 0xc
mov byte [esi + 9], 0
lea eax, [ebp - 0x278]
jmp 0x42ac23
mov byte [ebp - 0x458], 0
lea ecx, [ebp - 0x278]
push dword [ebp - 0x458]
push 9
call fcn.004198d0
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x2a8], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x298], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
push 1
push 0x429710
mov byte [ebp - 4], 2
call dword [sym.imp.KERNEL32.dll_SetConsoleCtrlHandler]
test eax, eax
jne 0x42ac6d
push str._Error_:_register_dragents_exit_function_failed_n
call fcn.00409910
add esp, 4
cmp dword [ebp - 0x294], 0x10
lea ecx, [ebp - 0x2a8]
cmovae ecx, dword [ebp - 0x2a8]
call fcn.00428f40
mov byte [ebp - 4], 1
mov ecx, dword [ebp - 0x294]
cmp ecx, 0x10
jb 0x42acc4
mov edx, dword [ebp - 0x2a8]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x42acba
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x42c419
push ecx
push edx
call fcn.0042f231
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x264]
cmp ecx, 0x10
jb 0x42ad05
mov edx, dword [ebp - 0x278]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x42acfb
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x42c419
push ecx
push edx
call fcn.0042f231
add esp, 8
mov ecx, dword [ebp + 8]
mov edx, edi
push 0x465a98
call fcn.0041b7f0
add esp, 4
test al, al
je 0x42c3f7
cmp dword [0x465af0], 0
je 0x42ae83
mov dword [ebp - 0x460], 0
mov dword [ebp - 0x45c], 0
mov dword [ebp - 0x458], 0
lea ecx, [ebp - 0x460]
mov dword [ebp - 4], 3
call fcn.00421000
mov eax, dword [ebp - 0x460]
mov edi, dword [ebp - 0x45c]
cmp eax, edi
je 0x42ae0e
lea edi, [eax + 0x18]
cmp dword [edi + 0x14], 0x10
mov esi, edi
jb 0x42ad7d
mov esi, dword [edi]
cmp dword [edi - 4], 0x10
lea edx, [edi - 0x18]
jb 0x42ad88
mov edx, dword [edx]
cmp dword [edi + 0x6c], 0x10
lea ecx, [edi + 0x58]
jb 0x42ad93
mov ecx, dword [ecx]
push dword [edi + 0x94]
lea eax, [edi + 0x18]
push eax
push esi
push edx
push ecx
push str.name:_s_n_tdevice_id:_s_n_tdesc:_s_n_tmac:_s_n_tloopback:_d_n
call fcn.00409910
push str._tip_list:_n
call fcn.00409910
mov esi, dword [edi + 0x2c]
add esp, 0x1c
cmp esi, dword [edi + 0x30]
je 0x42ade0
nop
cmp dword [esi + 0x14], 0x10
mov eax, esi
jb 0x42adca
mov eax, dword [esi]
push eax
push str._t_t_s_n
call fcn.00409910
add esi, 0x18
add esp, 8
cmp esi, dword [edi + 0x30]
jne 0x42adc0
push 0x460430
call fcn.00409910
add edi, 0xb8
add esp, 4
lea eax, [edi - 0x18]
cmp eax, dword [ebp - 0x45c]
jne 0x42ad73
mov edi, dword [ebp - 0x45c]
mov eax, dword [ebp - 0x460]
test eax, eax
je 0x42c3f7
mov esi, eax
cmp esi, edi
je 0x42ae37
nop dword [eax]
mov ecx, esi
call fcn.00419c50
add esi, 0xb8
cmp esi, edi
jne 0x42ae20
mov eax, dword [ebp - 0x460]
mov ecx, dword [ebp - 0x458]
sub ecx, eax
mov eax, 0xb21642c9
imul ecx
add edx, ecx
mov ecx, dword [ebp - 0x460]
sar edx, 7
mov eax, edx
shr eax, 0x1f
add eax, edx
imul edx, eax, 0xb8
mov eax, ecx
cmp edx, 0x1000
jb 0x42ae7c
mov ecx, dword [eax - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x42c45f
push edx
push ecx
jmp 0x42c3ef
cmp dword [0x465aa8], 0
jne 0x42b10a
mov ecx, 4
call fcn.004291c0
test eax, eax
je 0x42b100
cmp dword [0x465bd4], 1
jg 0x42afe4
push 0x5c
push str.E:_srcdragent_test_srcmain.cpp
call fcn.00430780
add esp, 8
test eax, eax
je 0x42aed6
push 0x5c
push str.E:_srcdragent_test_srcmain.cpp
call fcn.00430780
add esp, 8
lea esi, [eax + 1]
jmp 0x42aedb
mov esi, str.E:_srcdragent_test_srcmain.cpp
push 0x50
lea eax, [ebp - 0x60]
push 0
push eax
call fcn.004311e0
lea eax, [ebp - 0x45c]
push eax
call fcn.00437d64
lea eax, [ebp - 0x45c]
push eax
call fcn.0043805d
push dword [eax]
mov ecx, dword [eax + 0x10]
push dword [eax + 4]
inc ecx
push dword [eax + 8]
push dword [eax + 0xc]
mov eax, dword [eax + 0x14]
push ecx
add eax, 0x76c
push eax
push str._4d__02d__02d__2d:_2d:_2d
lea eax, [ebp - 0x60]
push 0x50
push eax
call fcn.00408bc0
xorps xmm0, xmm0
mov dword [ebp - 0x280], 0
lea ecx, [ebp - 0x60]
mov dword [ebp - 0x27c], 0
add esp, 0x38
lea edx, [ecx + 1]
movups xmmword [ebp - 0x290], xmm0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x42af50
sub ecx, edx
lea eax, [ebp - 0x60]
push ecx
push eax
lea ecx, [ebp - 0x290]
call fcn.004195d0
cmp dword [ebp - 0x27c], 0x10
lea eax, [ebp - 0x290]
push str.main
cmovae eax, dword [ebp - 0x290]
push 0x60
push esi
push dword [0x45e968]
push eax
push str._s___s___s:_d__s:
lea eax, [ebp - 0x260]
push 0x1ff
push eax
call fcn.00408bc0
mov ecx, dword [ebp - 0x27c]
add esp, 0x20
mov esi, eax
cmp ecx, 0x10
jb 0x42b0e9
mov edx, dword [ebp - 0x290]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x42b0df
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x42c41e
jmp 0x42b0df
push 0x50
lea eax, [ebp - 0x60]
push 0
push eax
call fcn.004311e0
lea eax, [ebp - 0x45c]
push eax
call fcn.00437d64
lea eax, [ebp - 0x45c]
push eax
call fcn.0043805d
push dword [eax]
mov ecx, dword [eax + 0x10]
push dword [eax + 4]
inc ecx
push dword [eax + 8]
push dword [eax + 0xc]
mov eax, dword [eax + 0x14]
push ecx
add eax, 0x76c
push eax
push str._4d__02d__02d__2d:_2d:_2d
lea eax, [ebp - 0x60]
push 0x50
push eax
call fcn.00408bc0
xorps xmm0, xmm0
mov dword [ebp - 0x280], 0
lea ecx, [ebp - 0x60]
mov dword [ebp - 0x27c], 0
add esp, 0x38
lea edx, [ecx + 1]
movups xmmword [ebp - 0x290], xmm0
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x42b060
sub ecx, edx
lea eax, [ebp - 0x60]
push ecx
push eax
lea ecx, [ebp - 0x290]
call fcn.004195d0
push dword [0x45e968]
cmp dword [ebp - 0x27c], 0x10
lea eax, [ebp - 0x290]
cmovae eax, dword [ebp - 0x290]
push eax
push str._s___s_
lea eax, [ebp - 0x260]
push 0x1ff
push eax
call fcn.00408bc0
mov ecx, dword [ebp - 0x27c]
add esp, 0x14
mov esi, eax
cmp ecx, 0x10
jb 0x42b0e9
mov edx, dword [ebp - 0x290]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x42b0df
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x42c423
push ecx
push edx
call fcn.0042f231
add esp, 8
push str.not_find_server_host_n
push esi
lea eax, [ebp - 0x260]
push eax
push 4
call fcn.004291f0
add esp, 0x10
mov eax, 2
jmp 0x42c3f9
push ecx
mov edx, 0x465a98
lea ecx, [ebp - 0x460]
call fcn.00429eb0
mov esi, eax
add esp, 4
cmp esi, 0x465ab0
je 0x42b15f
mov ecx, 0x465ab0
call fcn.00418d90
mov ecx, dword [esi]
mov dword [0x465ab0], ecx
mov ecx, dword [esi + 4]
mov dword [0x465ab4], ecx
mov eax, dword [esi + 8]
mov dword [0x465ab8], eax
mov dword [esi], 0
mov dword [esi + 4], 0
mov dword [esi + 8], 0
lea ecx, [ebp - 0x460]
call fcn.00418d90
push 0
call fcn.00437d64
push eax
call fcn.00439ae0
mov ecx, dword [0x465ab4]
mov eax, 0x2aaaaaab
sub ecx, dword [0x465ab0]
imul ecx
sar edx, 2
mov esi, edx
shr esi, 0x1f
add esi, edx
call fcn.00439abf
xor edx, edx
mov ecx, dword [0x465ab4]
div esi
sub ecx, dword [0x465ab0]
mov eax, 0x2aaaaaab
mov dword [0x465abc], edx
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
push eax
push str.g_argument.server_hosts:_d_ip_n
call fcn.00409910
mov esi, dword [0x465ab0]
add esp, 0x10
mov edi, dword [0x465ab4]
cmp esi, edi
je 0x42b24f
nop
push esi
lea ecx, [ebp - 0x2a8]
call fcn.004185f0
cmp dword [ebp - 0x294], 0x10
lea eax, [ebp - 0x2a8]
cmovae eax, dword [ebp - 0x2a8]
push eax
push str.server_host:_s_n
call fcn.00409910
mov ecx, dword [ebp - 0x294]
add esp, 8
cmp ecx, 0x10
jb 0x42b248
mov edx, dword [ebp - 0x2a8]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x42b23e
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x42c414
push ecx
push edx
call fcn.0042f231
add esp, 8
add esi, 0x18
cmp esi, edi
jne 0x42b1e0
push dword [0x465abc]
push str.current_server_host_index:_d_n
call fcn.00409910
add esp, 8
lea eax, [ebp - 0x454]
push eax
push 0x202
call dword [sym.imp.WS2_32.dll_WSAStartup]
mov esi, eax
test esi, esi
je 0x42b299
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push esi
push str.WSAStartup_error:__d__last_error:__d
call fcn.00409910
add esp, 0xc
mov eax, 3
jmp 0x42c3f9
cmp dword [0x465b08], 0x10
mov ecx, 0x465af4
mov esi, dword [0x465b04]
cmovae ecx, dword [0x465af4]
cmp esi, 3
jne 0x42b31b
mov edx, 0x460c98
sub esi, 4
jb 0x42b2d2
mov eax, dword [ecx]
cmp eax, dword [edx]
jne 0x42b2d7
add ecx, 4
add edx, 4
sub esi, 4
jae 0x42b2c1
cmp esi, 0xfffffffc
je 0x42b30b
mov al, byte [ecx]
cmp al, byte [edx]
jne 0x42b304
cmp esi, 0xfffffffd
je 0x42b30b
mov al, byte [ecx + 1]
cmp al, byte [edx + 1]
jne 0x42b304
cmp esi, 0xfffffffe
je 0x42b30b
mov al, byte [ecx + 2]
cmp al, byte [edx + 2]
jne 0x42b304
cmp esi, 0xffffffff
je 0x42b30b
mov al, byte [ecx + 3]
cmp al, byte [edx + 3]
je 0x42b30b
sbb eax, eax
or eax, 1
jmp 0x42b30d
xor eax, eax
test eax, eax
jne 0x42b31b
mov dword [0x465b54], 1
mov eax, dword [0x465b50]
test eax, eax
js 0x42b330
mov edx, 4
cmp eax, edx
cmovle edx, eax
jmp 0x42b332
xor edx, edx
mov esi, dword [0x465b58]
mov ecx, 2
mov dword [0x465bd4], edx
mov dword [0x465bd0], esi
call fcn.004291c0
test eax, eax
je 0x42b5b6
cmp edx, 1
jg 0x42b494
push 0x5c
push str.E:_srcdragent_test_srcmain.cpp
call fcn.00430780
add esp, 8
test eax, eax
je 0x42b386
push 0x5c
push str.E:_srcdragent_test_srcmain.cpp
call fcn.00430780
add esp, 8
lea esi, [eax + 1]
jmp 0x42b38b
mov esi, str.E:_srcdragent_test_srcmain.cpp
push 0x50
lea eax, [ebp - 0x60]
push 0
push eax
call fcn.004311e0
lea eax, [ebp - 0x45c]
push eax
call fcn.00437d64
lea eax, [ebp - 0x45c]
push eax
call fcn.0043805d
push dword [eax]
mov ecx, dword [eax + 0x10]
push dword [eax + 4]
inc ecx
push dword [eax + 8]
push dword [eax + 0xc]
mov eax, dword [eax + 0x14]
push ecx
add eax, 0x76c
push eax
push str._4d__02d__02d__2d:_2d:_2d
lea eax, [ebp - 0x60]
push 0x50
push eax
call fcn.00408bc0
xorps xmm0, xmm0
mov dword [ebp - 0x280], 0
lea ecx, [ebp - 0x60]
mov dword [ebp - 0x27c], 0
add esp, 0x38
lea edx, [ecx + 1]
movups xmmword [ebp - 0x290], xmm0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x42b400
sub ecx, edx
lea eax, [ebp - 0x60]
push ecx
push eax
lea ecx, [ebp - 0x290]
call fcn.004195d0
cmp dword [ebp - 0x27c], 0x10
lea eax, [ebp - 0x290]
push str.main
cmovae eax, dword [ebp - 0x290]
push 0x7d
push esi
push dword [0x45e960]
push eax
push str._s___s___s:_d__s:
lea eax, [ebp - 0x260]
push 0x1ff
push eax
call fcn.00408bc0
mov ecx, dword [ebp - 0x27c]
add esp, 0x20
mov esi, eax
cmp ecx, 0x10
jb 0x42b599
mov edx, dword [ebp - 0x290]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x42b58f
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x42c428
jmp 0x42b58f
push 0x50
lea eax, [ebp - 0x60]
push 0
push eax
call fcn.004311e0
lea eax, [ebp - 0x45c]
push eax
call fcn.00437d64
lea eax, [ebp - 0x45c]
push eax
call fcn.0043805d
push dword [eax]
mov ecx, dword [eax + 0x10]
push dword [eax + 4]
inc ecx
push dword [eax + 8]
push dword [eax + 0xc]
mov eax, dword [eax + 0x14]
push ecx
add eax, 0x76c
push eax
push str._4d__02d__02d__2d:_2d:_2d
lea eax, [ebp - 0x60]
push 0x50
push eax
call fcn.00408bc0
xorps xmm0, xmm0
mov dword [ebp - 0x280], 0
lea ecx, [ebp - 0x60]
mov dword [ebp - 0x27c], 0
add esp, 0x38
lea edx, [ecx + 1]
movups xmmword [ebp - 0x290], xmm0
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x42b510
sub ecx, edx
lea eax, [ebp - 0x60]
push ecx
push eax
lea ecx, [ebp - 0x290]
call fcn.004195d0
push dword [0x45e960]
cmp dword [ebp - 0x27c], 0x10
lea eax, [ebp - 0x290]
cmovae eax, dword [ebp - 0x290]
push eax
push str._s___s_
lea eax, [ebp - 0x260]
push 0x1ff
push eax
call fcn.00408bc0
mov ecx, dword [ebp - 0x27c]
add esp, 0x14
mov esi, eax
cmp ecx, 0x10
jb 0x42b599
mov edx, dword [ebp - 0x290]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x42b58f
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x42c42d
push ecx
push edx
call fcn.0042f231
add esp, 8
push str.dragent_initialize_success_start_running_now
push esi
lea eax, [ebp - 0x260]
push eax
push 2
call fcn.004291f0
mov esi, dword [0x465b58]
add esp, 0x10
test esi, esi
jne 0x42b6a5
push 0x50
lea eax, [ebp - 0x60]
push esi
push eax
call fcn.004311e0
lea eax, [ebp - 0x45c]
push eax
call fcn.00437d64
lea eax, [ebp - 0x45c]
push eax
call fcn.0043805d
push dword [eax]
mov ecx, dword [eax + 0x10]
push dword [eax + 4]
inc ecx
push dword [eax + 8]
push dword [eax + 0xc]
mov eax, dword [eax + 0x14]
push ecx
add eax, 0x76c
push eax
push str._4d__02d__02d__2d:_2d:_2d
lea eax, [ebp - 0x60]
push 0x50
push eax
call fcn.00408bc0
xorps xmm0, xmm0
mov dword [ebp - 0x280], esi
lea ecx, [ebp - 0x60]
mov dword [ebp - 0x27c], esi
add esp, 0x38
lea edx, [ecx + 1]
movups xmmword [ebp - 0x290], xmm0
nop word [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x42b630
sub ecx, edx
lea eax, [ebp - 0x60]
push ecx
push eax
lea ecx, [ebp - 0x290]
call fcn.004195d0
cmp dword [ebp - 0x27c], 0x10
lea eax, [ebp - 0x290]
cmovae eax, dword [ebp - 0x290]
push eax
push str._s___INFO_dragent_start_success_n
call fcn.00409910
mov ecx, dword [ebp - 0x27c]
add esp, 8
cmp ecx, 0x10
jb 0x42b6a5
mov edx, dword [ebp - 0x290]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x42b69b
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x42c432
push ecx
push edx
call fcn.0042f231
add esp, 8
mov ecx, dword [0x465ae8]
mov eax, closesocket
sub eax, ecx
cmp eax, 3
jb 0x42c437
cmp dword [0x465aec], 0x10
mov eax, 0x465ad8
push ecx
cmovae eax, dword [0x465ad8]
push eax
push 3
push 0x460cf8
push ecx
push dword [ebp - 0x458]
lea ecx, [ebp - 0x290]
call fcn.0041ba10
mov dword [ebp - 4], 4
mov edx, dword [ebp - 0x27c]
mov eax, edx
mov ecx, dword [ebp - 0x280]
sub eax, ecx
push 7
push str.__S_run
cmp eax, 7
jb 0x42b73c
cmp edx, 0x10
lea esi, [ebp - 0x290]
lea eax, [ecx + 7]
cmovae esi, dword [ebp - 0x290]
add esi, ecx
mov dword [ebp - 0x280], eax
push esi
call fcn.00430c60
add esp, 0xc
mov byte [esi + 7], 0
lea eax, [ebp - 0x290]
jmp 0x42b756
mov byte [ebp - 0x458], 0
lea ecx, [ebp - 0x290]
push dword [ebp - 0x458]
push 7
call fcn.004198d0
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x2c4], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x2b4], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
mov byte [ebp - 4], 6
mov ecx, dword [ebp - 0x27c]
cmp ecx, 0x10
jb 0x42b7bc
mov edx, dword [ebp - 0x290]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x42b7b2
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x42c43c
push ecx
push edx
call fcn.0042f231
add esp, 8
cmp dword [ebp - 0x2b0], 0x10
lea esi, [ebp - 0x2c4]
mov dword [ebp - 0x280], 0
cmovae esi, dword [ebp - 0x2c4]
mov dword [ebp - 0x27c], 0xf
mov byte [ebp - 0x290], 0
call fcn.0042df30
mov edi, eax
push 7
push str.dragent
mov ecx, edi
call fcn.00409740
push 0xf
push str.DRAgent_Service
lea ecx, [edi + 0x18]
call fcn.00409740
mov ecx, esi
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x42b814
sub ecx, edx
push ecx
push esi
lea ecx, [edi + 0x30]
call fcn.00409740
call fcn.0042df30
mov dword [eax + 0x154], fcn.0042a630
call fcn.0042df30
mov ecx, 0x465af4
mov dword [eax + 0x158], 0x42a1a0
mov eax, dword [0x465b08]
cmp eax, 0x10
mov edx, dword [0x465b04]
cmovae ecx, dword [0x465af4]
cmp edx, 7
jne 0x42bdea
mov edi, edx
mov esi, str.install
sub edi, 4
jb 0x42b885
mov eax, dword [ecx]
cmp eax, dword [esi]
jne 0x42b88a
add ecx, 4
add esi, 4
sub edi, 4
jae 0x42b874
cmp edi, 0xfffffffc
je 0x42b8be
mov al, byte [ecx]
cmp al, byte [esi]
jne 0x42b8b7
cmp edi, 0xfffffffd
je 0x42b8be
mov al, byte [ecx + 1]
cmp al, byte [esi + 1]
jne 0x42b8b7
cmp edi, 0xfffffffe
je 0x42b8be
mov al, byte [ecx + 2]
cmp al, byte [esi + 2]
jne 0x42b8b7
cmp edi, 0xffffffff
je 0x42b8be
mov al, byte [ecx + 3]
cmp al, byte [esi + 3]
je 0x42b8be
sbb eax, eax
or eax, 1
jmp 0x42b8c0
xor eax, eax
test eax, eax
jne 0x42bde5
call fcn.0042df30
mov ecx, eax
call fcn.0042e010
test eax, eax
jns 0x42bb5e
mov ecx, 2
call fcn.004291c0
test eax, eax
je 0x42c3c1
cmp dword [0x465bd4], 1
jg 0x42ba37
push 0x5c
push str.E:_srcdragent_test_srcmain.cpp
call fcn.00430780
add esp, 8
test eax, eax
je 0x42b922
push 0x5c
push str.E:_srcdragent_test_srcmain.cpp
call fcn.00430780
add esp, 8
lea esi, [eax + 1]
jmp 0x42b927
mov esi, str.E:_srcdragent_test_srcmain.cpp
push 0x50
lea eax, [ebp - 0x60]
push 0
push eax
call fcn.004311e0
lea eax, [ebp - 0x45c]
push eax
call fcn.00437d64
lea eax, [ebp - 0x45c]
push eax
call fcn.0043805d
push dword [eax]
mov ecx, dword [eax + 0x10]
push dword [eax + 4]
inc ecx
push dword [eax + 8]
push dword [eax + 0xc]
mov eax, dword [eax + 0x14]
push ecx
add eax, 0x76c
push eax
push str._4d__02d__02d__2d:_2d:_2d
lea eax, [ebp - 0x60]
push 0x50
push eax
call fcn.00408bc0
xorps xmm0, xmm0
mov dword [ebp - 0x268], 0
lea ecx, [ebp - 0x60]
mov dword [ebp - 0x264], 0
add esp, 0x38
lea edx, [ecx + 1]
movups xmmword [ebp - 0x278], xmm0
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x42b9a0
sub ecx, edx
lea eax, [ebp - 0x60]
push ecx
push eax
lea ecx, [ebp - 0x278]
call fcn.004195d0
cmp dword [ebp - 0x264], 0x10
lea eax, [ebp - 0x278]
push str.main
cmovae eax, dword [ebp - 0x278]
push 0x95
push esi
push dword [0x45e960]
push eax
push str._s___s___s:_d__s:
lea eax, [ebp - 0x260]
push 0x1ff
push eax
call fcn.00408bc0
mov ecx, dword [ebp - 0x264]
add esp, 0x20
mov esi, eax
cmp ecx, 0x10
jb 0x42bb39
mov edx, dword [ebp - 0x278]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x42bb2f
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x42c441
jmp 0x42bb2f
push 0x50
lea eax, [ebp - 0x60]
push 0
push eax
call fcn.004311e0
lea eax, [ebp - 0x45c]
push eax
call fcn.00437d64
lea eax, [ebp - 0x45c]
push eax
call fcn.0043805d
push dword [eax]
mov ecx, dword [eax + 0x10]
push dword [eax + 4]
inc ecx
push dword [eax + 8]
push dword [eax + 0xc]
mov eax, dword [eax + 0x14]
push ecx
add eax, 0x76c
push eax
push str._4d__02d__02d__2d:_2d:_2d
lea eax, [ebp - 0x60]
push 0x50
push eax
call fcn.00408bc0
xorps xmm0, xmm0
mov dword [ebp - 0x268], 0
lea ecx, [ebp - 0x60]
mov dword [ebp - 0x264], 0
add esp, 0x38
lea edx, [ecx + 1]
movups xmmword [ebp - 0x278], xmm0
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x42bab0
sub ecx, edx
lea eax, [ebp - 0x60]
push ecx
push eax
lea ecx, [ebp - 0x278]
call fcn.004195d0
push dword [0x45e960]
cmp dword [ebp - 0x264], 0x10
lea eax, [ebp - 0x278]
cmovae eax, dword [ebp - 0x278]
push eax
push str._s___s_
lea eax, [ebp - 0x260]
push 0x1ff
push eax
call fcn.00408bc0
mov ecx, dword [ebp - 0x264]
add esp, 0x14
mov esi, eax
cmp ecx, 0x10
jb 0x42bb39
mov edx, dword [ebp - 0x278]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x42bb2f
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x42c446
push ecx
push edx
call fcn.0042f231
add esp, 8
call fcn.0042df30
add eax, 0x50
push eax
push str.DRAgent_Service_install_failed:_s
push esi
lea eax, [ebp - 0x260]
push eax
push 2
call fcn.004291f0
add esp, 0x14
jmp 0x42c3c1
call fcn.0042df30
mov ecx, eax
call fcn.0042e2f0
mov ecx, 2
call fcn.004291c0
test eax, eax
je 0x42c3c1
cmp dword [0x465bd4], 1
jg 0x42bcc7
push 0x5c
push str.E:_srcdragent_test_srcmain.cpp
call fcn.00430780
add esp, 8
test eax, eax
je 0x42bbb0
push 0x5c
push str.E:_srcdragent_test_srcmain.cpp
call fcn.00430780
add esp, 8
lea esi, [eax + 1]
jmp 0x42bbb5
mov esi, str.E:_srcdragent_test_srcmain.cpp
push 0x50
lea eax, [ebp - 0x60]
push 0
push eax
call fcn.004311e0
lea eax, [ebp - 0x45c]
push eax
call fcn.00437d64
lea eax, [ebp - 0x45c]
push eax
call fcn.0043805d
push dword [eax]
mov ecx, dword [eax + 0x10]
push dword [eax + 4]
inc ecx
push dword [eax + 8]
push dword [eax + 0xc]
mov eax, dword [eax + 0x14]
push ecx
add eax, 0x76c
push eax
push str._4d__02d__02d__2d:_2d:_2d
lea eax, [ebp - 0x60]
push 0x50
push eax
call fcn.00408bc0
xorps xmm0, xmm0
mov dword [ebp - 0x268], 0
lea ecx, [ebp - 0x60]
mov dword [ebp - 0x264], 0
add esp, 0x38
lea edx, [ecx + 1]
movups xmmword [ebp - 0x278], xmm0
nop word [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x42bc30
sub ecx, edx
lea eax, [ebp - 0x60]
push ecx
push eax
lea ecx, [ebp - 0x278]
call fcn.004195d0
cmp dword [ebp - 0x264], 0x10
lea eax, [ebp - 0x278]
push str.main
cmovae eax, dword [ebp - 0x278]
push 0x99
push esi
push dword [0x45e960]
push eax
push str._s___s___s:_d__s:
lea eax, [ebp - 0x260]
push 0x1ff
push eax
call fcn.00408bc0
mov ecx, dword [ebp - 0x264]
add esp, 0x20
mov esi, eax
cmp ecx, 0x10
jb 0x42bdc9
mov edx, dword [ebp - 0x278]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x42bdbf
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x42c44b
jmp 0x42bdbf
push 0x50
lea eax, [ebp - 0x60]
push 0
push eax
call fcn.004311e0
lea eax, [ebp - 0x45c]
push eax
call fcn.00437d64
lea eax, [ebp - 0x45c]
push eax
call fcn.0043805d
push dword [eax]
mov ecx, dword [eax + 0x10]
push dword [eax + 4]
inc ecx
push dword [eax + 8]
push dword [eax + 0xc]
mov eax, dword [eax + 0x14]
push ecx
add eax, 0x76c
push eax
push str._4d__02d__02d__2d:_2d:_2d
lea eax, [ebp - 0x60]
push 0x50
push eax
call fcn.00408bc0
xorps xmm0, xmm0
mov dword [ebp - 0x268], 0
lea ecx, [ebp - 0x60]
mov dword [ebp - 0x264], 0
add esp, 0x38
lea edx, [ecx + 1]
movups xmmword [ebp - 0x278], xmm0
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x42bd40
sub ecx, edx
lea eax, [ebp - 0x60]
push ecx
push eax
lea ecx, [ebp - 0x278]
call fcn.004195d0
push dword [0x45e960]
cmp dword [ebp - 0x264], 0x10
lea eax, [ebp - 0x278]
cmovae eax, dword [ebp - 0x278]
push eax
push str._s___s_
lea eax, [ebp - 0x260]
push 0x1ff
push eax
call fcn.00408bc0
mov ecx, dword [ebp - 0x264]
add esp, 0x14
mov esi, eax
cmp ecx, 0x10
jb 0x42bdc9
mov edx, dword [ebp - 0x278]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x42bdbf
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x42c450
push ecx
push edx
call fcn.0042f231
add esp, 8
push str.DRAgent_Service_install_success.
push esi
lea eax, [ebp - 0x260]
push eax
push 2
call fcn.004291f0
add esp, 0x10
jmp 0x42c3c1
mov eax, dword [0x465b08]
mov esi, dword [0x465af4]
cmp eax, 0x10
mov ecx, 0x465af4
cmovae ecx, esi
cmp edx, 9
jne 0x42bfcf
mov edi, edx
mov esi, str.uninstall
sub edi, 4
jb 0x42be21
mov eax, dword [ecx]
cmp eax, dword [esi]
jne 0x42be26
add ecx, 4
add esi, 4
sub edi, 4
jae 0x42be10
cmp edi, 0xfffffffc
je 0x42be5a
mov al, byte [ecx]
cmp al, byte [esi]
jne 0x42be53
cmp edi, 0xfffffffd
je 0x42be5a
mov al, byte [ecx + 1]
cmp al, byte [esi + 1]
jne 0x42be53
cmp edi, 0xfffffffe
je 0x42be5a
mov al, byte [ecx + 2]
cmp al, byte [esi + 2]
jne 0x42be53
cmp edi, 0xffffffff
je 0x42be5a
mov al, byte [ecx + 3]
cmp al, byte [esi + 3]
je 0x42be5a
sbb eax, eax
or eax, 1
jmp 0x42be5c
xor eax, eax
test eax, eax
jne 0x42bfc4
call fcn.0042df30
mov ecx, eax
call fcn.0042e480
call fcn.0042df30
push 0xf003f
push 0
push 0
mov edi, eax
call dword [sym.imp.ADVAPI32.dll_OpenSCManagerA]
mov dword [ebp - 0x458], eax
test eax, eax
je 0x42bfa9
cmp dword [edi + 0x14], 0x10
mov ecx, edi
jb 0x42be9e
mov ecx, dword [edi]
push 1
push ecx
push eax
call dword [sym.imp.ADVAPI32.dll_OpenServiceA]
test eax, eax
je 0x42bf9d
push eax
call dword [sym.imp.ADVAPI32.dll_CloseServiceHandle]
push dword [ebp - 0x458]
call dword [sym.imp.ADVAPI32.dll_CloseServiceHandle]
push 0xf003f
push 0
push 0
call dword [sym.imp.ADVAPI32.dll_OpenSCManagerA]
mov dword [ebp - 0x458], eax
test eax, eax
jne 0x42beee
push str._Error_Couldnt_open_service_manager
call fcn.00409910
add esp, 4
jmp 0x42c3c1
cmp dword [edi + 0x14], 0x10
mov ecx, edi
jb 0x42bef8
mov ecx, dword [edi]
push 0x10020
push ecx
push eax
call dword [sym.imp.ADVAPI32.dll_OpenServiceA]
mov dword [ebp - 0x464], eax
test eax, eax
jne 0x42bf36
push dword [ebp - 0x458]
call dword [sym.imp.ADVAPI32.dll_CloseServiceHandle]
cmp dword [edi + 0x14], 0x10
jb 0x42bf23
mov edi, dword [edi]
push edi
push str._Error_Couldnt_open_service:_s
call fcn.00409910
add esp, 8
jmp 0x42c3c1
lea ecx, [ebp - 0x2ac]
push ecx
push 1
push eax
call dword [sym.imp.ADVAPI32.dll_ControlService]
push dword [ebp - 0x464]
call dword [sym.imp.ADVAPI32.dll_DeleteService]
push dword [ebp - 0x464]
mov esi, eax
call dword [sym.imp.ADVAPI32.dll_CloseServiceHandle]
push dword [ebp - 0x458]
call dword [sym.imp.ADVAPI32.dll_CloseServiceHandle]
test esi, esi
je 0x42bf8b
cmp dword [edi + 0x14], 0x10
jb 0x42bf78
mov edi, dword [edi]
push edi
push str._Error_delete_service___s__success
call fcn.00409910
add esp, 8
jmp 0x42c3c1
push str._Error_Service_could_not_be_deleted
call fcn.00409910
add esp, 4
jmp 0x42c3c1
push dword [ebp - 0x458]
call dword [sym.imp.ADVAPI32.dll_CloseServiceHandle]
cmp dword [edi + 0x14], 0x10
jb 0x42bfb1
mov edi, dword [edi]
push edi
push str._Info_service___s__have_been_uninstalled
call fcn.00409910
add esp, 8
jmp 0x42c3c1
mov eax, dword [0x465b08]
mov esi, dword [0x465af4]
cmp eax, 0x10
mov ecx, 0x465af4
cmovae ecx, esi
cmp edx, 5
jne 0x42c056
mov edi, edx
mov esi, str.start
sub edi, 4
jb 0x42c001
nop dword [eax + eax]
mov eax, dword [ecx]
cmp eax, dword [esi]
jne 0x42c006
add ecx, 4
add esi, 4
sub edi, 4
jae 0x42bff0
cmp edi, 0xfffffffc
je 0x42c03a
mov al, byte [ecx]
cmp al, byte [esi]
jne 0x42c033
cmp edi, 0xfffffffd
je 0x42c03a
mov al, byte [ecx + 1]
cmp al, byte [esi + 1]
jne 0x42c033
cmp edi, 0xfffffffe
je 0x42c03a
mov al, byte [ecx + 2]
cmp al, byte [esi + 2]
jne 0x42c033
cmp edi, 0xffffffff
je 0x42c03a
mov al, byte [ecx + 3]
cmp al, byte [esi + 3]
je 0x42c03a
sbb eax, eax
or eax, 1
jmp 0x42c03c
xor eax, eax
test eax, eax
jne 0x42c051
call fcn.0042df30
mov ecx, eax
call fcn.0042e2f0
jmp 0x42c3c1
mov eax, dword [0x465b08]
cmp eax, 0x10
mov ecx, 0x465af4
cmovae ecx, dword [0x465af4]
cmp edx, 4
jne 0x42c0d4
mov esi, str.stop
sub edx, edx
jb 0x42c084
mov eax, dword [ecx]
cmp eax, dword [esi]
jne 0x42c089
add ecx, 4
add esi, 4
sub edx, 4
jae 0x42c073
cmp edx, 0xfffffffc
je 0x42c0bd
mov al, byte [ecx]
cmp al, byte [esi]
jne 0x42c0b6
cmp edx, 0xfffffffd
je 0x42c0bd
mov al, byte [ecx + 1]
cmp al, byte [esi + 1]
jne 0x42c0b6
cmp edx, 0xfffffffe
je 0x42c0bd
mov al, byte [ecx + 2]
cmp al, byte [esi + 2]
jne 0x42c0b6
cmp edx, 0xffffffff
je 0x42c0bd
mov al, byte [ecx + 3]
cmp al, byte [esi + 3]
je 0x42c0bd
sbb eax, eax
or eax, 1
jmp 0x42c0bf
xor eax, eax
test eax, eax
jne 0x42c0d4
call fcn.0042df30
mov ecx, eax
call fcn.0042e480
jmp 0x42c3c1
cmp dword [0x465b54], 0
je 0x42c3b1
mov ecx, 2
call fcn.004291c0
test eax, eax
je 0x42c350
cmp dword [0x465bd4], 1
jg 0x42c238
push 0x5c
push str.E:_srcdragent_test_srcmain.cpp
call fcn.00430780
add esp, 8
test eax, eax
je 0x42c127
push 0x5c
push str.E:_srcdragent_test_srcmain.cpp
call fcn.00430780
add esp, 8
lea esi, [eax + 1]
jmp 0x42c12c
mov esi, str.E:_srcdragent_test_srcmain.cpp
push 0x50
lea eax, [ebp - 0x60]
push 0
push eax
call fcn.004311e0
lea eax, [ebp - 0x45c]
push eax
call fcn.00437d64
lea eax, [ebp - 0x45c]
push eax
call fcn.0043805d
push dword [eax]
mov ecx, dword [eax + 0x10]
push dword [eax + 4]
inc ecx
push dword [eax + 8]
push dword [eax + 0xc]
mov eax, dword [eax + 0x14]
push ecx
add eax, 0x76c
push eax
push str._4d__02d__02d__2d:_2d:_2d
lea eax, [ebp - 0x60]
push 0x50
push eax
call fcn.00408bc0
xorps xmm0, xmm0
mov dword [ebp - 0x268], 0
lea ecx, [ebp - 0x60]
mov dword [ebp - 0x264], 0
add esp, 0x38
lea edx, [ecx + 1]
movups xmmword [ebp - 0x278], xmm0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x42c1a1
sub ecx, edx
lea eax, [ebp - 0x60]
push ecx
push eax
lea ecx, [ebp - 0x278]
call fcn.004195d0
cmp dword [ebp - 0x264], 0x10
lea eax, [ebp - 0x278]
push str.main
cmovae eax, dword [ebp - 0x278]
push 0xab
push esi
push dword [0x45e960]
push eax
push str._s___s___s:_d__s:
lea eax, [ebp - 0x260]
push 0x1ff
push eax
call fcn.00408bc0
mov ecx, dword [ebp - 0x264]
add esp, 0x20
mov esi, eax
cmp ecx, 0x10
jb 0x42c339
mov edx, dword [ebp - 0x278]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x42c32f
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x42c455
jmp 0x42c32f
push 0x50
lea eax, [ebp - 0x60]
push 0
push eax
call fcn.004311e0
lea eax, [ebp - 0x45c]
push eax
call fcn.00437d64
lea eax, [ebp - 0x45c]
push eax
call fcn.0043805d
push dword [eax]
mov ecx, dword [eax + 0x10]
push dword [eax + 4]
inc ecx
push dword [eax + 8]
push dword [eax + 0xc]
mov eax, dword [eax + 0x14]
push ecx
add eax, 0x76c
push eax
push str._4d__02d__02d__2d:_2d:_2d
lea eax, [ebp - 0x60]
push 0x50
push eax
call fcn.00408bc0
xorps xmm0, xmm0
mov dword [ebp - 0x268], 0
lea ecx, [ebp - 0x60]
mov dword [ebp - 0x264], 0
add esp, 0x38
lea edx, [ecx + 1]
movups xmmword [ebp - 0x278], xmm0
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x42c2b0
sub ecx, edx
lea eax, [ebp - 0x60]
push ecx
push eax
lea ecx, [ebp - 0x278]
call fcn.004195d0
push dword [0x45e960]
cmp dword [ebp - 0x264], 0x10
lea eax, [ebp - 0x278]
cmovae eax, dword [ebp - 0x278]
push eax
push str._s___s_
lea eax, [ebp - 0x260]
push 0x1ff
push eax
call fcn.00408bc0
mov ecx, dword [ebp - 0x264]
add esp, 0x14
mov esi, eax
cmp ecx, 0x10
jb 0x42c339
mov edx, dword [ebp - 0x278]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x42c32f
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x42c45a
push ecx
push edx
call fcn.0042f231
add esp, 8
push str.Windows_Service_start
push esi
lea eax, [ebp - 0x260]
push eax
push 2
call fcn.004291f0
add esp, 0x10
call fcn.0042df30
mov ecx, eax
cmp dword [eax + 0x14], 0x10
jb 0x42c35f
mov ecx, dword [eax]
mov dword [eax + 0x48], 0
lea eax, [ebp - 0x270]
push eax
mov dword [ebp - 0x270], ecx
mov dword [ebp - 0x26c], 0x42dd20
mov dword [ebp - 0x268], 0
mov dword [ebp - 0x264], 0
call dword [sym.imp.ADVAPI32.dll_StartServiceCtrlDispatcherA]
test eax, eax
jne 0x42c3bb
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push str._Error_StartServiceCtrlDispatcher_run_service_fail:error_code:_d_n
call fcn.00409910
add esp, 8
jmp 0x42c3bb
push 0
call fcn.0042a630
add esp, 4
call dword [sym.imp.WS2_32.dll_WSACleanup]
mov ecx, dword [ebp - 0x2b0]
cmp ecx, 0x10
jb 0x42c3f7
mov edx, dword [ebp - 0x2c4]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x42c3ed
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x42c45f
push ecx
push edx
call fcn.0042f231
add esp, 8
xor eax, eax
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.0042f1f3
mov esp, ebp
pop ebp
ret
call fcn.00436a90
call fcn.00436a90
call fcn.00436a90
call fcn.00436a90
call fcn.00436a90
call fcn.00436a90
call fcn.00436a90
call fcn.00408d80
call fcn.00436a90
call fcn.00436a90
call fcn.00436a90
call fcn.00436a90
call fcn.00436a90
call fcn.00436a90
call fcn.00436a90
call fcn.00436a90
int3