Function at 0x404ee0
Capabilities:
Send data
Send data on socket

Disassembly:
push 0xffffffffffffffff
push 0x407dc6
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x44
push ebx
push ebp
push esi
push edi
mov esi, ecx
or ebp, 0xffffffff
mov edi, str.AUTH_LOGIN_r_n
mov ecx, ebp
xor eax, eax
xor ebx, ebx
mov dword [esp + 0x5c], 1
repne scasb al, byte es:[edi]
mov eax, dword [esi + 4]
mov edi, dword [sym.imp.WS2_32.dll_send]
not ecx
dec ecx
push ebx
push ecx
push str.AUTH_LOGIN_r_n
push eax
call edi
cmp eax, ebp
jne 0x404f3c
mov ecx, esi
call fcn.00404b60
jmp 0x4050d0
push 0x40a2c8
mov ecx, esi
call fcn.00404b90
test al, al
je 0x4050d0
mov eax, dword [esp + 0x68]
cmp eax, ebx
jne 0x404f5d
mov eax, dword [sym.imp.MSVCP60.dll_char_const__private:_static_char_const____cdecl_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::_Nullstr_void_::_2::_C]
mov ecx, dword [esp + 0x6c]
lea edx, [esp + 0x34]
push ecx
push eax
push edx
lea ecx, [esp + 0x1c]
call fcn.00404200
push 0x40a26c
push eax
lea eax, [esp + 0x1c]
mov byte [esp + 0x64], 2
push eax
call sub.MSVCP60.dll_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char_____cdecl_std::operator_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char___const___char_const__
add esp, 0xc
push 1
lea ecx, [esp + 0x38]
mov byte [esp + 0x60], 4
call dword [sym.imp.MSVCP60.dll_private:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::_Tidy_bool_]
mov eax, dword [esp + 0x18]
cmp eax, ebx
jne 0x404fa7
mov eax, dword [sym.imp.MSVCP60.dll_char_const__private:_static_char_const____cdecl_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::_Nullstr_void_::_2::_C]
mov ecx, dword [esp + 0x1c]
mov edx, dword [esi + 4]
push ebx
push ecx
push eax
push edx
call edi
cmp eax, ebp
jne 0x404ff7
mov ecx, esi
call fcn.00404b60
push 1
lea ecx, [esp + 0x18]
mov byte [esp + 0x60], 1
call dword [sym.imp.MSVCP60.dll_private:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::_Tidy_bool_]
push 1
lea ecx, [esp + 0x68]
mov byte [esp + 0x60], bl
call dword [sym.imp.MSVCP60.dll_private:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::_Tidy_bool_]
push 1
lea ecx, [esp + 0x78]
mov dword [esp + 0x60], ebp
call dword [sym.imp.MSVCP60.dll_private:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::_Tidy_bool_]
xor al, al
jmp 0x405243
push 0x40a2c8
mov ecx, esi
call fcn.00404b90
test al, al
jne 0x40503f
push 1
lea ecx, [esp + 0x18]
mov byte [esp + 0x60], 1
call dword [sym.imp.MSVCP60.dll_private:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::_Tidy_bool_]
push 1
lea ecx, [esp + 0x68]
mov byte [esp + 0x60], bl
call dword [sym.imp.MSVCP60.dll_private:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::_Tidy_bool_]
push 1
lea ecx, [esp + 0x78]
mov dword [esp + 0x60], ebp
call dword [sym.imp.MSVCP60.dll_private:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::_Tidy_bool_]
xor al, al
jmp 0x405243
mov eax, dword [esp + 0x78]
cmp eax, ebx
jne 0x40504c
mov eax, dword [sym.imp.MSVCP60.dll_char_const__private:_static_char_const____cdecl_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::_Nullstr_void_::_2::_C]
mov ecx, dword [esp + 0x7c]
lea edx, [esp + 0x44]
push ecx
push eax
push edx
lea ecx, [esp + 0x1c]
call fcn.00404200
push 0x40a26c
push eax
lea eax, [esp + 0x2c]
mov byte [esp + 0x64], 5
push eax
call sub.MSVCP60.dll_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char_____cdecl_std::operator_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char___const___char_const__
add esp, 0xc
push 1
lea ecx, [esp + 0x48]
mov byte [esp + 0x60], 7
call dword [sym.imp.MSVCP60.dll_private:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::_Tidy_bool_]
mov eax, dword [esp + 0x28]
cmp eax, ebx
jne 0x405096
mov eax, dword [sym.imp.MSVCP60.dll_char_const__private:_static_char_const____cdecl_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::_Nullstr_void_::_2::_C]
mov ecx, dword [esp + 0x2c]
mov edx, dword [esi + 4]
push ebx
push ecx
push eax
push edx
call edi
cmp eax, ebp
jne 0x4050f7
mov ecx, esi
call fcn.00404b60
push 1
lea ecx, [esp + 0x28]
mov byte [esp + 0x60], 4
call dword [sym.imp.MSVCP60.dll_private:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::_Tidy_bool_]
push 1
lea ecx, [esp + 0x18]
mov byte [esp + 0x60], 1
call dword [sym.imp.MSVCP60.dll_private:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::_Tidy_bool_]
push 1
lea ecx, [esp + 0x68]
mov byte [esp + 0x60], bl
call dword [sym.imp.MSVCP60.dll_private:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::_Tidy_bool_]
push 1
lea ecx, [esp + 0x78]
mov dword [esp + 0x60], ebp
call dword [sym.imp.MSVCP60.dll_private:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::_Tidy_bool_]
xor al, al
jmp 0x405243
push 0x40a2c4
mov ecx, esi
call fcn.00404b90
test al, al
jne 0x40518d
push 1
lea ecx, [esp + 0x28]
mov byte [esp + 0x60], 4
call dword [sym.imp.MSVCP60.dll_private:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::_Tidy_bool_]
push 1
lea ecx, [esp + 0x18]
mov byte [esp + 0x60], 1
call dword [sym.imp.MSVCP60.dll_private:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::_Tidy_bool_]
mov ecx, dword [esp + 0x68]
cmp ecx, ebx
je 0x405151
mov al, byte [ecx - 1]
cmp al, bl
je 0x405147
cmp al, 0xff
je 0x405147
dec al
mov byte [ecx - 1], al
jmp 0x405151
dec ecx
push ecx
call sub.MFC42.DLL_operatordelete
add esp, 4
mov ecx, dword [esp + 0x78]
mov dword [esp + 0x68], ebx
cmp ecx, ebx
mov dword [esp + 0x6c], ebx
mov dword [esp + 0x70], ebx
je 0x405186
mov al, byte [ecx - 1]
cmp al, bl
je 0x40517c
cmp al, 0xff
je 0x40517c
dec al
mov byte [ecx - 1], al
xor al, al
jmp 0x405243
dec ecx
push ecx
call sub.MFC42.DLL_operatordelete
add esp, 4
xor al, al
jmp 0x405243
mov ecx, dword [esp + 0x28]
cmp ecx, ebx
je 0x4051b1
mov al, byte [ecx - 1]
cmp al, bl
je 0x4051a7
cmp al, 0xff
je 0x4051a7
dec al
mov byte [ecx - 1], al
jmp 0x4051b1
dec ecx
push ecx
call sub.MFC42.DLL_operatordelete
add esp, 4
mov ecx, dword [esp + 0x18]
mov dword [esp + 0x28], ebx
cmp ecx, ebx
mov dword [esp + 0x2c], ebx
mov dword [esp + 0x30], ebx
je 0x4051e1
mov al, byte [ecx - 1]
cmp al, bl
je 0x4051d7
cmp al, 0xff
je 0x4051d7
dec al
mov byte [ecx - 1], al
jmp 0x4051e1
dec ecx
push ecx
call sub.MFC42.DLL_operatordelete
add esp, 4
mov ecx, dword [esp + 0x68]
mov dword [esp + 0x18], ebx
cmp ecx, ebx
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x20], ebx
je 0x405211
mov al, byte [ecx - 1]
cmp al, bl
je 0x405207
cmp al, 0xff
je 0x405207
dec al
mov byte [ecx - 1], al
jmp 0x405211
dec ecx
push ecx
call sub.MFC42.DLL_operatordelete
add esp, 4
mov ecx, dword [esp + 0x78]
mov dword [esp + 0x68], ebx
cmp ecx, ebx
mov dword [esp + 0x6c], ebx
mov dword [esp + 0x70], ebx
je 0x405241
mov al, byte [ecx - 1]
cmp al, bl
je 0x405237
cmp al, 0xff
je 0x405237
dec al
mov byte [ecx - 1], al
jmp 0x405241
dec ecx
push ecx
call sub.MFC42.DLL_operatordelete
add esp, 4
mov al, 1
mov ecx, dword [esp + 0x54]
pop edi
pop esi
pop ebp
pop ebx
mov dword fs:[0], ecx
add esp, 0x50
ret 0x20