Function at 0x42ef30
Capabilities:
Check mutex and terminate process on windows
Check mutex on windows
Create process on windows
Terminate process

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x44fa72
mov eax, dword fs:[0]
push eax
push ecx
sub esp, 0x690
mov eax, dword [0x4632c0]
xor eax, ebp
mov dword [ebp - 0x18], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x10], esp
mov dword [ebp - 0x5a8], ecx
mov dword [ebp - 0x5a4], 0
mov ecx, dword [ebp - 0x5a8]
add ecx, 0x2d8
call fcn.00436830
test eax, eax
jne 0x42ef91
mov eax, 0x80004005
jmp 0x42ffee
mov eax, dword [sym.imp.MSVCR90.dll___argc]
cmp dword [eax], 2
jne 0x42f05d
push 2
lea ecx, [ebp - 0x174]
push ecx
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x158], esp
push 2
push 0x456f08
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_char_const___unsigned_int_]
mov dword [ebp - 0x5ac], eax
lea ecx, [ebp - 0x154]
call fcn.004034e0
mov dword [ebp - 0x5b0], eax
mov edx, dword [ebp - 0x5b0]
mov dword [ebp - 0x5b4], edx
mov dword [ebp - 4], 0
mov eax, dword [ebp - 0x5a4]
or eax, 1
mov dword [ebp - 0x5a4], eax
mov ecx, dword [ebp - 0x5b4]
call fcn.00403740
mov dword [ebp - 0x5b8], eax
mov ecx, dword [ebp - 0x5b8]
mov dword [ebp - 0x5bc], ecx
mov dword [ebp - 4], 1
mov edx, dword [ebp - 0x5a4]
or edx, 2
mov dword [ebp - 0x5a4], edx
mov ecx, dword [ebp - 0x5bc]
call dword [sym.imp.MSVCP90.dll_public:_char_const____thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::c_str_void_const]
push eax
mov eax, dword [sym.imp.MSVCR90.dll___argv]
mov ecx, dword [eax]
mov edx, dword [ecx + 4]
push edx
call dword [sym.imp.MSVCR90.dll__strnicmp]
add esp, 0xc
test eax, eax
jne 0x42f05d
mov dword [ebp - 0x5c0], 1
jmp 0x42f067
mov dword [ebp - 0x5c0], 0
mov al, byte [ebp - 0x5c0]
mov byte [ebp - 0xf9], al
mov dword [ebp - 4], 0
mov ecx, dword [ebp - 0x5a4]
and ecx, 2
je 0x42f098
and dword [ebp - 0x5a4], 0xfffffffd
lea ecx, [ebp - 0x174]
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
mov dword [ebp - 4], 0xffffffff
mov edx, dword [ebp - 0x5a4]
and edx, 1
je 0x42f0bc
and dword [ebp - 0x5a4], 0xfffffffe
lea ecx, [ebp - 0x154]
call fcn.004050e0
movzx eax, byte [ebp - 0xf9]
test eax, eax
je 0x42f0fb
xor eax, eax
jmp 0x42ffee
push 0
push 0x100
lea ecx, [ebp - 0x1f4]
push ecx
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x1d8], esp
push 0x14
push str._etf
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_char_const___unsigned_int_]
mov dword [ebp - 0x5c8], eax
lea ecx, [ebp - 0x1d4]
call fcn.004034e0
mov dword [ebp - 0x5cc], eax
mov edx, dword [ebp - 0x5cc]
mov dword [ebp - 0x5d0], edx
mov dword [ebp - 4], 2
mov ecx, dword [ebp - 0x5d0]
call fcn.00403740
mov dword [ebp - 0x5d4], eax
mov eax, dword [ebp - 0x5d4]
mov dword [ebp - 0x5d8], eax
mov byte [ebp - 4], 3
mov ecx, dword [ebp - 0x5d8]
call dword [sym.imp.MSVCP90.dll_public:_char_const____thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::c_str_void_const]
push eax
lea ecx, [ebp - 0x17c]
call fcn.00413e70
mov dword [ebp - 0x5dc], eax
mov ecx, dword [ebp - 0x5dc]
mov dword [ebp - 0x5e0], ecx
mov byte [ebp - 4], 4
mov edx, dword [ebp - 0x5e0]
push edx
mov eax, dword [ebp - 0x5a8]
add eax, 0x244
push eax
call fcn.0043ade0
add esp, 0xc
movzx ecx, al
mov dword [ebp - 0x14], ecx
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x17c]
call fcn.00413f00
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x1f4]
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x1d4]
call fcn.004050e0
lea ecx, [ebp - 0x34]
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_void_]
mov dword [ebp - 4], 5
cmp dword [ebp - 0x14], 0
je 0x42f3f4
push 0
lea edx, [ebp - 0x288]
push edx
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x26c], esp
push 0xa
push 0x456f24
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_char_const___unsigned_int_]
mov dword [ebp - 0x5e4], eax
lea ecx, [ebp - 0x268]
call fcn.004034e0
mov dword [ebp - 0x5e8], eax
mov eax, dword [ebp - 0x5e8]
mov dword [ebp - 0x5ec], eax
mov byte [ebp - 4], 6
mov ecx, dword [ebp - 0x5ec]
call fcn.00403a60
mov dword [ebp - 0x5f0], eax
mov ecx, dword [ebp - 0x5f0]
mov dword [ebp - 0x5f4], ecx
mov byte [ebp - 4], 7
mov ecx, dword [ebp - 0x5f4]
call dword [sym.imp.MSVCP90.dll_public:_char_const____thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::c_str_void_const]
push eax
lea ecx, [ebp - 0x210]
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_char_const__]
mov dword [ebp - 0x5f8], eax
mov edx, dword [ebp - 0x5f8]
mov dword [ebp - 0x5fc], edx
mov byte [ebp - 4], 8
mov eax, dword [ebp - 0x5fc]
push eax
push 0x100
lea ecx, [ebp - 0x308]
push ecx
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x2ec], esp
push 0xc
push str.___nIG_
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_char_const___unsigned_int_]
mov dword [ebp - 0x600], eax
lea ecx, [ebp - 0x2e8]
call fcn.004034e0
mov dword [ebp - 0x604], eax
mov edx, dword [ebp - 0x604]
mov dword [ebp - 0x608], edx
mov byte [ebp - 4], 9
mov ecx, dword [ebp - 0x608]
call fcn.00403630
mov dword [ebp - 0x60c], eax
mov eax, dword [ebp - 0x60c]
mov dword [ebp - 0x610], eax
mov byte [ebp - 4], 0xa
mov ecx, dword [ebp - 0x610]
call dword [sym.imp.MSVCP90.dll_public:_char_const____thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::c_str_void_const]
push eax
lea ecx, [ebp - 0x290]
call fcn.00413e70
mov dword [ebp - 0x614], eax
mov ecx, dword [ebp - 0x614]
mov dword [ebp - 0x618], ecx
mov byte [ebp - 4], 0xb
mov edx, dword [ebp - 0x618]
push edx
mov eax, dword [ebp - 0x5a8]
add eax, 0x244
push eax
lea ecx, [ebp - 0x324]
push ecx
call fcn.0043ae40
add esp, 0x14
mov dword [ebp - 0x61c], eax
mov edx, dword [ebp - 0x61c]
mov dword [ebp - 0x620], edx
mov byte [ebp - 4], 0xc
mov eax, dword [ebp - 0x620]
push eax
lea ecx, [ebp - 0x34]
call dword [sym.imp.MSVCP90.dll_public:_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char______thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::operator_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char___const__]
mov byte [ebp - 4], 0xb
lea ecx, [ebp - 0x324]
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
mov byte [ebp - 4], 0xa
lea ecx, [ebp - 0x290]
call fcn.00413f00
mov byte [ebp - 4], 9
lea ecx, [ebp - 0x308]
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
mov byte [ebp - 4], 8
lea ecx, [ebp - 0x2e8]
call fcn.004050e0
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x210]
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x288]
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x268]
call fcn.004050e0
mov dword [ebp - 0x38], 0
jmp 0x42f406
mov ecx, dword [ebp - 0x38]
add ecx, 1
mov dword [ebp - 0x38], ecx
mov ecx, dword [ebp - 0x5a8]
add ecx, 0x2d8
call fcn.00436830
cmp dword [ebp - 0x38], eax
jae 0x42f7b1
mov edx, dword [ebp - 0x38]
push edx
mov ecx, dword [ebp - 0x5a8]
add ecx, 0x2d8
call fcn.00436850
mov ecx, dword [sym.imp.MSVCP90.dll_unsigned_int_const_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::npos]
mov edx, dword [eax + 0x74]
cmp edx, dword [ecx]
jne 0x42f444
jmp 0x42f3fd
mov eax, dword [ebp - 0x38]
push eax
mov ecx, dword [ebp - 0x5a8]
add ecx, 0x2d8
call fcn.00436850
mov ecx, dword [eax + 0x74]
push ecx
mov ecx, dword [ebp - 0x5a8]
add ecx, 0x2c0
call fcn.00436630
add eax, 0x1c
mov ecx, eax
call dword [sym.imp.MSVCP90.dll_public:_unsigned_int___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::length_void_const]
test eax, eax
je 0x42f61e
mov edx, dword [ebp - 0x38]
push edx
mov ecx, dword [ebp - 0x5a8]
add ecx, 0x2d8
call fcn.00436850
mov eax, dword [eax + 0x74]
push eax
mov ecx, dword [ebp - 0x5a8]
add ecx, 0x2c0
call fcn.00436630
add eax, 0x1c
push eax
lea ecx, [ebp - 0x54]
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char___const__]
mov byte [ebp - 4], 0xd
mov byte [ebp - 4], 0xe
call fcn.0041ea10
jmp 0x42f4de
mov dword [ebp - 4], 0xd
lea ecx, [ebp - 0x54]
call dword [sym.imp.MSVCP90.dll_public:_unsigned_int___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::length_void_const]
test eax, eax
je 0x42f51d
lea ecx, [ebp - 0x54]
call dword [sym.imp.MSVCP90.dll_public:_unsigned_int___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::length_void_const]
sub eax, 1
push eax
lea ecx, [ebp - 0x54]
call dword [sym.imp.MSVCP90.dll_public:_char____thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::at_unsigned_int_]
movsx ecx, byte [eax]
cmp ecx, 0x5c
je 0x42f51d
push 0x5c
push 1
lea ecx, [ebp - 0x54]
call dword [sym.imp.MSVCP90.dll_public:_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char______thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::append_unsigned_int__char_]
mov edx, dword [ebp - 0x38]
push edx
mov ecx, dword [ebp - 0x5a8]
add ecx, 0x2d8
call fcn.00436850
add eax, 0x3c
push eax
lea ecx, [ebp - 0x54]
call dword [sym.imp.MSVCP90.dll_public:_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char______thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::append_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char___const__]
mov ecx, dword [ebp - 0x5a8]
add ecx, 0x244
call dword [sym.imp.MSVCP90.dll_public:_char_const____thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::c_str_void_const]
push eax
lea ecx, [ebp - 0x54]
call dword [sym.imp.MSVCP90.dll_public:_char_const____thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::c_str_void_const]
push eax
call dword [sym.imp.MSVCR90.dll__stricmp]
add esp, 8
test eax, eax
jne 0x42f59b
mov dword [ebp - 0x328], 0
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x54]
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x34]
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
mov eax, dword [ebp - 0x328]
jmp 0x42ffee
cmp dword [ebp - 0x14], 0
je 0x42f611
lea ecx, [ebp - 0x34]
call dword [sym.imp.MSVCP90.dll_public:_char_const____thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::c_str_void_const]
push eax
lea ecx, [ebp - 0x54]
call dword [sym.imp.MSVCP90.dll_public:_char_const____thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::c_str_void_const]
push eax
call dword [sym.imp.MSVCR90.dll__stricmp]
add esp, 8
test eax, eax
jne 0x42f611
mov dword [ebp - 0x32c], 0
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x54]
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x34]
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
mov eax, dword [ebp - 0x32c]
jmp 0x42ffee
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x54]
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
mov eax, dword [ebp - 0x38]
push eax
mov ecx, dword [ebp - 0x5a8]
add ecx, 0x2d8
call fcn.00436850
mov ecx, dword [eax + 0x74]
push ecx
mov ecx, dword [ebp - 0x5a8]
add ecx, 0x2c0
call fcn.00436630
mov ecx, eax
call dword [sym.imp.MSVCP90.dll_public:_unsigned_int___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::length_void_const]
test eax, eax
je 0x42f7ac
mov edx, dword [ebp - 0x38]
push edx
mov ecx, dword [ebp - 0x5a8]
add ecx, 0x2d8
call fcn.00436850
mov eax, dword [eax + 0x74]
push eax
mov ecx, dword [ebp - 0x5a8]
add ecx, 0x2c0
call fcn.00436630
push eax
lea ecx, [ebp - 0x70]
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char___const__]
mov byte [ebp - 4], 0x10
lea ecx, [ebp - 0x70]
call dword [sym.imp.MSVCP90.dll_public:_unsigned_int___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::length_void_const]
test eax, eax
je 0x42f6c8
lea ecx, [ebp - 0x70]
call dword [sym.imp.MSVCP90.dll_public:_unsigned_int___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::length_void_const]
sub eax, 1
push eax
lea ecx, [ebp - 0x70]
call dword [sym.imp.MSVCP90.dll_public:_char____thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::at_unsigned_int_]
movsx ecx, byte [eax]
cmp ecx, 0x5c
je 0x42f6c8
push 0x5c
push 1
lea ecx, [ebp - 0x70]
call dword [sym.imp.MSVCP90.dll_public:_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char______thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::append_unsigned_int__char_]
mov edx, dword [ebp - 0x38]
push edx
mov ecx, dword [ebp - 0x5a8]
add ecx, 0x2d8
call fcn.00436850
add eax, 0x3c
push eax
lea ecx, [ebp - 0x70]
call dword [sym.imp.MSVCP90.dll_public:_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char______thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::append_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char___const__]
mov ecx, dword [ebp - 0x5a8]
add ecx, 0x244
call dword [sym.imp.MSVCP90.dll_public:_char_const____thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::c_str_void_const]
push eax
lea ecx, [ebp - 0x70]
call dword [sym.imp.MSVCP90.dll_public:_char_const____thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::c_str_void_const]
push eax
call dword [sym.imp.MSVCR90.dll__stricmp]
add esp, 8
test eax, eax
jne 0x42f746
mov dword [ebp - 0x330], 0
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x70]
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x34]
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
mov eax, dword [ebp - 0x330]
jmp 0x42ffee
cmp dword [ebp - 0x14], 0
je 0x42f79f
lea ecx, [ebp - 0x34]
call dword [sym.imp.MSVCP90.dll_public:_char_const____thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::c_str_void_const]
push eax
lea ecx, [ebp - 0x70]
call dword [sym.imp.MSVCP90.dll_public:_char_const____thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::c_str_void_const]
push eax
call dword [sym.imp.MSVCR90.dll__stricmp]
add esp, 8
test eax, eax
jne 0x42f79f
mov dword [ebp - 0x334], 0
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x70]
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x34]
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
mov eax, dword [ebp - 0x334]
jmp 0x42ffee
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x70]
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
jmp 0x42f3fd
mov dword [ebp - 0x74], 0
jmp 0x42f7c3
mov eax, dword [ebp - 0x74]
add eax, 1
mov dword [ebp - 0x74], eax
mov ecx, dword [ebp - 0x5a8]
add ecx, 0x2d8
call fcn.00436830
cmp dword [ebp - 0x74], eax
jae 0x42ffce
mov ecx, dword [ebp - 0x74]
push ecx
mov ecx, dword [ebp - 0x5a8]
add ecx, 0x2d8
call fcn.00436850
add eax, 0x58
mov ecx, eax
call dword [sym.imp.MSVCP90.dll_public:_unsigned_int___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::length_void_const]
test eax, eax
jne 0x42f803
jmp 0x42f7ba
mov dword [ebp - 0xf4], 0x80004005
mov edx, dword [ebp - 0x74]
push edx
mov ecx, dword [ebp - 0x5a8]
add ecx, 0x2d8
call fcn.00436850
add eax, 0x58
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x338], esp
push eax
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char___const__]
mov dword [ebp - 0x624], eax
mov ecx, dword [ebp - 0x5a8]
call fcn.00429920
mov dword [ebp - 0x628], eax
mov eax, dword [ebp - 0x628]
mov dword [ebp - 0xf4], eax
mov byte [ebp - 4], 0x11
call fcn.0041e9e0
jmp 0x42f87c
mov dword [ebp - 4], 5
cmp dword [ebp - 0xf4], 0
jge 0x42f891
jmp 0x42f7ba
mov ecx, dword [ebp - 0x5a8]
cmp dword [ecx + 0x17c], 0
je 0x42f9e3
mov edx, dword [ebp - 0x5a8]
mov eax, dword [edx + 0x17c]
push eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [ebp - 0xf8], eax
cmp dword [ebp - 0xf8], 0
jne 0x42f9c8
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
lea ecx, [ebp - 0x3b0]
push ecx
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x394], esp
push 0x26
push 0x456f40
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_char_const___unsigned_int_]
mov dword [ebp - 0x62c], eax
lea ecx, [ebp - 0x390]
call fcn.004034e0
mov dword [ebp - 0x630], eax
mov edx, dword [ebp - 0x630]
mov dword [ebp - 0x634], edx
mov byte [ebp - 4], 0x13
mov ecx, dword [ebp - 0x634]
call fcn.00403630
mov dword [ebp - 0x638], eax
mov eax, dword [ebp - 0x638]
mov dword [ebp - 0x63c], eax
mov byte [ebp - 4], 0x14
mov ecx, dword [ebp - 0x63c]
call dword [sym.imp.MSVCP90.dll_public:_char_const____thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::c_str_void_const]
push eax
push 1
mov ecx, dword [ebp - 0x5a8]
push ecx
call fcn.0042a3d0
add esp, 0x10
mov byte [ebp - 4], 0x13
lea ecx, [ebp - 0x3b0]
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x390]
call fcn.004050e0
mov dword [ebp - 0x3b4], 0x80004005
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x34]
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
mov eax, dword [ebp - 0x3b4]
jmp 0x42ffee
mov edx, dword [ebp - 0x5a8]
mov dword [edx + 0x17c], 0
push 0x7d0
call dword [sym.imp.KERNEL32.dll_Sleep]
mov ecx, dword [ebp - 0x5a8]
add ecx, 0x180
call dword [sym.imp.MSVCP90.dll_public:_char_const____thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::c_str_void_const]
push eax
push 0
push 0x1f0001
call dword [sym.imp.KERNEL32.dll_OpenMutexA]
mov ecx, dword [ebp - 0x5a8]
mov dword [ecx + 0x17c], eax
mov edx, dword [ebp - 0x5a8]
cmp dword [edx + 0x17c], 0
je 0x42fb2f
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
lea eax, [ebp - 0x42c]
push eax
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x410], esp
push 0x25
push 0x456f68
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_char_const___unsigned_int_]
mov dword [ebp - 0x644], eax
lea ecx, [ebp - 0x40c]
call fcn.004034e0
mov dword [ebp - 0x648], eax
mov ecx, dword [ebp - 0x648]
mov dword [ebp - 0x64c], ecx
mov byte [ebp - 4], 0x15
mov ecx, dword [ebp - 0x64c]
call fcn.00403630
mov dword [ebp - 0x650], eax
mov edx, dword [ebp - 0x650]
mov dword [ebp - 0x654], edx
mov byte [ebp - 4], 0x16
mov ecx, dword [ebp - 0x654]
call dword [sym.imp.MSVCP90.dll_public:_char_const____thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::c_str_void_const]
push eax
push 1
mov eax, dword [ebp - 0x5a8]
push eax
call fcn.0042a3d0
add esp, 0x10
mov byte [ebp - 4], 0x15
lea ecx, [ebp - 0x42c]
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x40c]
call fcn.004050e0
call fcn.0041ea10
test eax, eax
je 0x42fae0
call fcn.00425b60
call fcn.004226b0
mov dword [ebp - 0x430], 0x80004005
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x34]
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
mov eax, dword [ebp - 0x430]
jmp 0x42ffee
mov dword [ebp - 0xa0], 0
xor ecx, ecx
mov dword [ebp - 0x9c], ecx
mov dword [ebp - 0x98], ecx
mov dword [ebp - 0x94], ecx
mov dword [ebp - 0xf0], 0
push 0x40
push 0
lea edx, [ebp - 0xec]
push edx
call sub.MSVCR90.dll_memset
add esp, 0xc
mov dword [ebp - 0xc4], 1
xor eax, eax
mov word [ebp - 0xc0], ax
push 0x96
call fcn.00401060
add esp, 4
mov dword [ebp - 0x65c], eax
cmp dword [ebp - 0x65c], 0xe3
je 0x42fb9e
jmp 0x42fba0
jmp 0x42fbaa
call fcn.00424140
call fcn.0043fdb0
mov dword [ebp - 0xa8], 0
call fcn.0041f1a0
test eax, eax
je 0x42fbc2
call fcn.00424280
call fcn.004013b0
test eax, eax
je 0x42fbd5
call fcn.004226b0
call fcn.00402aa0
lea ecx, [ebp - 0x4a8]
push ecx
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x48c], esp
push 3
push 0x456f90
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_char_const___unsigned_int_]
mov dword [ebp - 0x660], eax
lea ecx, [ebp - 0x488]
call fcn.004034e0
mov dword [ebp - 0x664], eax
mov edx, dword [ebp - 0x664]
mov dword [ebp - 0x668], edx
mov byte [ebp - 4], 0x17
mov ecx, dword [ebp - 0x668]
call fcn.00403630
mov dword [ebp - 0x66c], eax
mov eax, dword [ebp - 0x66c]
mov dword [ebp - 0x670], eax
mov byte [ebp - 4], 0x18
mov ecx, dword [ebp - 0x670]
call dword [sym.imp.MSVCP90.dll_public:_char_const____thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::c_str_void_const]
push eax
mov ecx, dword [ebp - 0x74]
push ecx
mov ecx, dword [ebp - 0x5a8]
add ecx, 0x2d8
call fcn.00436850
add eax, 0x58
push eax
lea edx, [ebp - 0x90]
push edx
call dword [sym.imp.MSVCP90.dll_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char_____cdecl_std::operator_char__struct_std::char_traits_char___class_std::allocator_char___class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char___const___char_const__]
add esp, 0xc
mov byte [ebp - 4], 0x1a
lea ecx, [ebp - 0x4a8]
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
mov byte [ebp - 4], 0x1b
lea ecx, [ebp - 0x488]
call fcn.004050e0
call fcn.0041e970
test eax, eax
je 0x42fca4
call fcn.004226b0
call fcn.00426060
push 0xe7
push 0xc
push 0x30
call fcn.00444f70
add esp, 0xc
cmp eax, 0xf3
jne 0x42fcbe
jmp 0x42fccc
call fcn.004226b0
call fcn.00424310
jmp 0x42fccc
lea eax, [ebp - 0xa0]
push eax
lea ecx, [ebp - 0xf0]
push ecx
push 0
push 0
push 0x8000000
push 0
push 0
push 0
lea ecx, [ebp - 0x90]
call dword [sym.imp.MSVCP90.dll_public:_char_const____thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::c_str_void_const]
push eax
push 0
call dword [sym.imp.KERNEL32.dll_CreateProcessA]
mov dword [ebp - 0xa4], eax
push 0x2710
mov edx, dword [ebp - 0xa0]
push edx
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov dword [ebp - 0xa8], eax
call fcn.004013b0
test eax, eax
je 0x42fd2a
call fcn.0043fdb0
cmp dword [ebp - 0xa8], 0x102
je 0x42fed8
push 0
mov eax, dword [ebp - 0xa0]
push eax
call dword [sym.imp.KERNEL32.dll_TerminateProcess]
mov ecx, dword [ebp - 0xa0]
push ecx
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov edx, dword [ebp - 0x9c]
push edx
call dword [sym.imp.KERNEL32.dll_CloseHandle]
push 0x19
push 0xe1
call fcn.00445200
add esp, 8
mov dword [ebp - 0x674], eax
cmp dword [ebp - 0x674], 0xc
je 0x42fd83
jmp 0x42fd85
jmp 0x42fd8f
call fcn.00426060
call fcn.004243a0
mov eax, dword [ebp - 0xa8]
push eax
lea ecx, [ebp - 0x520]
push ecx
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x504], esp
push 0x2f
push 0x456f94
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_char_const___unsigned_int_]
mov dword [ebp - 0x678], eax
lea ecx, [ebp - 0x500]
call fcn.004034e0
mov dword [ebp - 0x67c], eax
mov edx, dword [ebp - 0x67c]
mov dword [ebp - 0x680], edx
mov byte [ebp - 4], 0x1c
mov ecx, dword [ebp - 0x680]
call fcn.00403a60
mov dword [ebp - 0x684], eax
mov eax, dword [ebp - 0x684]
mov dword [ebp - 0x688], eax
mov byte [ebp - 4], 0x1d
mov ecx, dword [ebp - 0x688]
call dword [sym.imp.MSVCP90.dll_public:_char_const____thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::c_str_void_const]
push eax
push 1
mov ecx, dword [ebp - 0x5a8]
push ecx
call fcn.0042a3d0
add esp, 0x10
mov byte [ebp - 4], 0x1c
lea ecx, [ebp - 0x520]
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
mov byte [ebp - 4], 0x1b
lea ecx, [ebp - 0x500]
call fcn.004050e0
mov byte [ebp - 4], 0x1e
call fcn.0041e940
jmp 0x42fe5c
mov dword [ebp - 4], 0x1b
push 0xf2
push 0x88
call fcn.00407ff0
add esp, 8
mov dword [ebp - 0x68c], eax
cmp dword [ebp - 0x68c], 0x8090
je 0x42fe89
jmp 0x42fe8b
jmp 0x42fe95
call fcn.00402d20
call fcn.00426060
mov dword [ebp - 0x524], 0x80004005
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x90]
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x34]
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
mov eax, dword [ebp - 0x524]
jmp 0x42ffee
mov edx, dword [ebp - 0xa0]
push edx
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [ebp - 0x9c]
push eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
push 0x1388
call dword [sym.imp.KERNEL32.dll_Sleep]
mov ecx, dword [ebp - 0x5a8]
call fcn.0042a250
lea ecx, [ebp - 0x90]
call dword [sym.imp.MSVCP90.dll_public:_char_const____thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::c_str_void_const]
push eax
lea ecx, [ebp - 0x59c]
push ecx
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x580], esp
push 0x22
push 0x456fc4
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_char_const___unsigned_int_]
mov dword [ebp - 0x690], eax
lea ecx, [ebp - 0x57c]
call fcn.004034e0
mov dword [ebp - 0x694], eax
mov edx, dword [ebp - 0x694]
mov dword [ebp - 0x698], edx
mov byte [ebp - 4], 0x20
mov ecx, dword [ebp - 0x698]
call fcn.00403a60
mov dword [ebp - 0x69c], eax
mov eax, dword [ebp - 0x69c]
mov dword [ebp - 0x6a0], eax
mov byte [ebp - 4], 0x21
mov ecx, dword [ebp - 0x6a0]
call dword [sym.imp.MSVCP90.dll_public:_char_const____thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::c_str_void_const]
push eax
push 1
mov ecx, dword [ebp - 0x5a8]
push ecx
call fcn.0042a3d0
add esp, 0x10
mov byte [ebp - 4], 0x20
lea ecx, [ebp - 0x59c]
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
mov byte [ebp - 4], 0x1b
lea ecx, [ebp - 0x57c]
call fcn.004050e0
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x90]
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
jmp 0x42f7ba
mov dword [ebp - 0x5a0], 0x80004005
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x34]
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
mov eax, dword [ebp - 0x5a0]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x18]
xor ecx, ebp
call fcn.0044b84a
mov esp, ebp
pop ebp
ret