Function at 0x10053020
Capabilities:
Connect socket

Disassembly:
sub esp, 0x14
mov eax, dword [0x100af208]
push ebp
mov ebp, dword [sym.imp.tier0_s.dll_SetInAssert]
push esi
mov esi, ecx
mov dword [esp + 0x18], eax
cmp dword [esi + 0xc], 4
push edi
je 0x100530ea
call dword [sym.imp.tier0_s.dll_IsInAssert]
test al, al
jne 0x100530ea
push 1
call ebp
push pe_nt_image_headers32
push str.._tcpconnection.cpp
push 2
call dword [sym.imp.tier0_s.dll__SpewInfo]
push str.Assertion_Failed:_k_EConnectionStateUnconnected__m_EConnectionState
push 0x1008d3bc
call dword [sym.imp.tier0_s.dll__SpewMessage]
add esp, 0x18
mov edi, eax
call dword [sym.imp.tier0_s.dll_CallFlushLogFunc]
call dword [sym.imp.tier0_s.dll_CallAssertFailedNotifyFunc]
test edi, edi
jne 0x100530b1
call dword [sym.imp.tier0_s.dll_ShouldUseNewAssertDialog]
test al, al
je 0x100530b1
push str.Assertion_Failed:_k_EConnectionStateUnconnected__m_EConnectionState
push pe_nt_image_headers32
push str.._tcpconnection.cpp
call dword [sym.imp.tier0_s.dll_DoNewAssertDialog]
add esp, 0xc
test al, al
je 0x100530b1
int3
mov al, byte [0x100c084e]
test al, al
jne 0x100530e3
call dword [sym.imp.tier0_s.dll_Plat_IsInDebugSession]
test al, al
jne 0x100530e3
push pe_nt_image_headers32
push str.._tcpconnection.cpp
push str.Assertion_Failed:_k_EConnectionStateUnconnected__m_EConnectionState
call dword [sym.imp.tier0_s.dll_WriteMiniDump]
add esp, 0xc
mov byte [0x100c084e], 1
push 0
call ebp
add esp, 4
mov eax, dword [esp + 0x24]
mov edi, dword [eax]
lea ecx, [esi + 0x1c]
mov edx, ecx
mov dword [edx], edi
mov edi, dword [eax + 4]
mov dword [edx + 4], edi
mov eax, dword [eax + 8]
mov dword [edx + 8], eax
push ebx
lea edx, [esp + 0x10]
push edx
mov dword [esp + 0x2c], 0
call fcn.10049fb0
mov eax, dword [esp + 0x2c]
mov edx, dword [eax]
lea ebx, [esi + 0x28]
mov ecx, ebx
mov dword [ecx], edx
mov edx, dword [eax + 4]
mov dword [ecx + 4], edx
mov eax, dword [eax + 8]
mov dword [ecx + 8], eax
call fcn.10049d80
test ax, ax
jne 0x1005314b
push 0
mov ecx, ebx
call fcn.10049d60
push 0
mov ecx, ebx
call fcn.10049da0
cmp dword [esi + 0x14], 0xffffffff
je 0x100531fe
call dword [sym.imp.tier0_s.dll_IsInAssert]
test al, al
jne 0x100531fe
push 1
call ebp
push 0x10e
push str.._tcpconnection.cpp
push 2
call dword [sym.imp.tier0_s.dll__SpewInfo]
push str.Assertion_Failed:_INVALID_SOCKET__m_hSocket
push 0x1008d3bc
call dword [sym.imp.tier0_s.dll__SpewMessage]
add esp, 0x18
mov edi, eax
call dword [sym.imp.tier0_s.dll_CallFlushLogFunc]
call dword [sym.imp.tier0_s.dll_CallAssertFailedNotifyFunc]
test edi, edi
jne 0x100531c5
call dword [sym.imp.tier0_s.dll_ShouldUseNewAssertDialog]
test al, al
je 0x100531c5
push str.Assertion_Failed:_INVALID_SOCKET__m_hSocket
push 0x10e
push str.._tcpconnection.cpp
call dword [sym.imp.tier0_s.dll_DoNewAssertDialog]
add esp, 0xc
test al, al
je 0x100531c5
int3
mov al, byte [0x100c084d]
test al, al
jne 0x100531f7
call dword [sym.imp.tier0_s.dll_Plat_IsInDebugSession]
test al, al
jne 0x100531f7
push 0x10e
push str.._tcpconnection.cpp
push str.Assertion_Failed:_INVALID_SOCKET__m_hSocket
call dword [sym.imp.tier0_s.dll_WriteMiniDump]
add esp, 0xc
mov byte [0x100c084d], 1
push 0
call ebp
add esp, 4
mov cl, byte [esi + 0x34]
mov eax, dword [esp + 0x30]
not cl
test cl, 1
jne 0x1005320f
or eax, 1
push ebx
push eax
push ebx
push 1
call fcn.10046230
add esp, 0x10
cmp eax, 0xffffffff
mov dword [esi + 0x14], eax
pop ebx
jne 0x10053239
pop edi
pop esi
xor al, al
pop ebp
mov ecx, dword [esp + 0x10]
call fcn.10076182
add esp, 0x14
ret 0xc
mov dl, byte [esi + 0x34]
not dl
test dl, 1
mov byte [esi + 0x18], 1
mov dword [esi + 0xc], 1
je 0x100532fd
call dword [sym.imp.tier0_s.dll_IsInAssert]
test al, al
jne 0x1005332d
push 1
call ebp
push 0x133
push str.._tcpconnection.cpp
push 2
call dword [sym.imp.tier0_s.dll__SpewInfo]
push str.Assertion_Failed:_false
push 0x1008d3bc
call dword [sym.imp.tier0_s.dll__SpewMessage]
add esp, 0x18
mov esi, eax
call dword [sym.imp.tier0_s.dll_CallFlushLogFunc]
call dword [sym.imp.tier0_s.dll_CallAssertFailedNotifyFunc]
test esi, esi
jne 0x100532c2
call dword [sym.imp.tier0_s.dll_ShouldUseNewAssertDialog]
test al, al
je 0x100532c2
push str.Assertion_Failed:_false
push 0x133
push str.._tcpconnection.cpp
call dword [sym.imp.tier0_s.dll_DoNewAssertDialog]
add esp, 0xc
test al, al
je 0x100532c2
int3
mov al, byte [0x100c084c]
test al, al
jne 0x100532f4
call dword [sym.imp.tier0_s.dll_Plat_IsInDebugSession]
test al, al
jne 0x100532f4
push 0x133
push str.._tcpconnection.cpp
push str.Assertion_Failed:_false
call dword [sym.imp.tier0_s.dll_WriteMiniDump]
add esp, 0xc
mov byte [0x100c084c], 1
push 0
call ebp
add esp, 4
jmp 0x1005332d
push 0x10
lea ecx, [esp + 0x10]
push ecx
push eax
call dword [sym.imp.WS2_32.dll_connect]
cmp eax, 0xffffffff
mov dword [esp + 0x24], eax
jne 0x1005332d
call dword [sym.imp.WS2_32.dll_WSAGetLastError]
cmp eax, 0x2733
mov dword [esp + 0x24], eax
jne 0x1005332d
mov dword [esp + 0x24], 0
mov ecx, dword [esp + 0x24]
xor eax, eax
pop edi
test ecx, ecx
mov ecx, dword [esp + 0x18]
pop esi
sete al
pop ebp
call fcn.10076182
add esp, 0x14
ret 0xc