Function at 0x413df0
Capabilities:
Get socket status
Send data
Send data on socket
Send http request

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x5531dc
mov eax, dword fs:[0]
push eax
sub esp, 0x13c
mov eax, dword [0x62aabc]
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, ecx
mov dword [ebp - 0x124], edi
lea esi, [edi + 0x30]
push esi
mov dword [ebp - 0x140], esi
call sub.MSVCP140.dll__Mtx_lock
add esp, 4
test eax, eax
jne 0x414493
mov eax, dword [esi + 0x2c]
cmp eax, 0x7fffffff
je 0x41449a
mov dword [ebp - 4], 0
lea ecx, [edi + 0x2c]
mov al, 1
xchg byte [ecx], al
mov al, byte [ecx]
or esi, 0xffffffff
mov dword [ebp - 0x138], 0
mov dword [ebp - 0x134], 0x61a8
nop
test al, al
je 0x414466
lea eax, [edi + 0x8130]
mov dword [ebp - 0x13c], eax
mov edx, eax
nop dword [eax + eax]
cmp esi, 0xffffffff
jne 0x413ff1
mov eax, dword [edi + 0x90]
lea ecx, [ebp - 0x148]
push ecx
push 0
push 0
lea ecx, [ebp - 0x114]
mov dword [ebp - 0x110], eax
push ecx
inc eax
mov dword [ebp - 0x148], 0
push eax
mov dword [ebp - 0x144], 0xc350
mov dword [ebp - 0x114], 1
call dword [sym.imp.WS2_32.dll_select]
test eax, eax
jle 0x414052
push 0
push 0
push dword [edi + 0x90]
call dword [sym.imp.WS2_32.dll_accept]
mov esi, eax
cmp esi, 0xffffffff
je 0x414052
mov al, byte [edi + 0x2c]
nop
test al, al
je 0x414052
mov eax, dword [0x62da44]
xorps xmm0, xmm0
push esi
push str.got_HTTP_connection__u
sub esp, 0x18
mov eax, dword [eax]
mov ecx, esp
mov dword [ebp - 0x128], esp
mov eax, dword [eax + 8]
movups xmmword [ecx], xmm0
mov dword [ecx + 0x10], 5
mov dword [ecx + 0x14], 0xf
mov dword [ebp - 0x118], eax
mov eax, dword [str.cspot]
mov dword [ecx], eax
mov al, byte [0x559ac8]
mov byte [ecx + 4], al
mov byte [ecx + 5], 0
push 0x224
sub esp, 0x18
mov byte [ebp - 4], 1
mov edi, esp
mov ecx, edi
push 0x50
movups xmmword [edi], xmm0
mov dword [edi + 0x10], 0
mov dword [edi + 0x14], 0xf
call fcn.00410930
mov dword [edi + 0x10], 0x4c
mov ecx, eax
mov dword [edi], ecx
mov dword [edi + 0x14], 0x4f
movups xmm0, xmmword [str.D:UsersphiliDropboxDevelopmentSpotConnect_spotupnp_srcHTTPstreamer.cpp]
movups xmmword [ecx], xmm0
movups xmm0, xmmword [0x559ae0]
movups xmmword [ecx + 0x10], xmm0
movups xmm0, xmmword [0x559af0]
movups xmmword [ecx + 0x20], xmm0
movups xmm0, xmmword [0x559b00]
movups xmmword [ecx + 0x30], xmm0
movq xmm0, qword [0x559b10]
movq qword [ecx + 0x40], xmm0
mov eax, dword [0x559b18]
mov dword [ecx + 0x48], eax
mov byte [ecx + 0x4c], 0
push dword [0x62da44]
mov byte [ebp - 4], 0
call dword [ebp - 0x118]
mov edx, dword [ebp - 0x13c]
add esp, 0x40
mov edi, dword [ebp - 0x124]
lea eax, [ebp - 0x138]
mov dword [ebp - 0x118], edx
push eax
push 0
push 0
lea eax, [ebp - 0x114]
mov dword [ebp - 0x110], esi
push eax
lea eax, [esi + 1]
mov dword [ebp - 0x114], 1
push eax
call dword [sym.imp.WS2_32.dll_select]
test eax, eax
jle 0x414077
push esi
mov ecx, edi
call fcn.00410ea0
mov edx, dword [ebp - 0x118]
mov cl, al
mov byte [ebp - 0x119], cl
test cl, cl
je 0x414063
mov ecx, dword [edx]
nop
cmp ecx, 2
jg 0x41405d
mov eax, 2
xchg dword [edx], eax
jmp 0x414097
lea edx, [edi + 0x8130]
jmp 0x414457
mov cl, byte [ebp - 0x119]
mov eax, dword [edx]
nop
cmp eax, 4
jne 0x414087
mov dword [edi + 0xa8], 1
jmp 0x414087
mov cl, 1
test eax, eax
js 0x41434b
mov edx, dword [ebp - 0x118]
test cl, cl
jne 0x414097
mov eax, dword [edx]
nop
cmp eax, 1
jle 0x41434b
mov eax, dword [edx]
mov dword [ebp - 0x128], edx
nop
cmp eax, 2
jge 0x4140ba
mov eax, dword [edx]
nop
cmp eax, 4
jne 0x4140b6
cmp dword [edi + 0xa8], 0
jne 0x4140ba
xor eax, eax
jmp 0x4140cf
lea eax, [ebp - 0x138]
mov ecx, edi
push eax
push esi
call fcn.00414c00
mov edx, dword [ebp - 0x118]
mov ecx, dword [edx]
nop
cmp ecx, 3
jl 0x414234
test eax, eax
jne 0x414236
cmp byte [edi + 0x80ad], al
je 0x4140fa
push eax
push 5
push str.0_r_n_r_n
push esi
call dword [sym.imp.WS2_32.dll_send]
push dword [edi + 0x81fc]
mov eax, dword [0x62da44]
xorps xmm0, xmm0
push dword [edi + 0x81f8]
push esi
mov eax, dword [eax]
push str.closing_socket__d__sent:_zu___now_lingering
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x12c], esp
mov eax, dword [eax + 8]
mov dword [ebp - 0x120], eax
movups xmmword [ecx], xmm0
mov dword [ecx + 0x10], 5
mov dword [ecx + 0x14], 0xf
mov eax, dword [str.cspot]
mov dword [ecx], eax
mov al, byte [0x559ac8]
mov byte [ecx + 4], al
mov byte [ecx + 5], 0
push 0x243
sub esp, 0x18
mov byte [ebp - 4], 3
mov edi, esp
mov ecx, edi
push 0x50
movups xmmword [edi], xmm0
mov dword [edi + 0x10], 0
mov dword [edi + 0x14], 0xf
call fcn.00410930
mov dword [edi + 0x10], 0x4c
mov ecx, eax
mov dword [edi], ecx
mov dword [edi + 0x14], 0x4f
movups xmm0, xmmword [str.D:UsersphiliDropboxDevelopmentSpotConnect_spotupnp_srcHTTPstreamer.cpp]
movups xmmword [ecx], xmm0
movups xmm0, xmmword [0x559ae0]
movups xmmword [ecx + 0x10], xmm0
movups xmm0, xmmword [0x559af0]
movups xmmword [ecx + 0x20], xmm0
movups xmm0, xmmword [0x559b00]
movups xmmword [ecx + 0x30], xmm0
movq xmm0, qword [0x559b10]
movq qword [ecx + 0x40], xmm0
mov eax, dword [0x559b18]
mov dword [ecx + 0x48], eax
mov byte [ecx + 0x4c], 0
push dword [0x62da44]
mov byte [ebp - 4], 0
call dword [ebp - 0x120]
mov edi, dword [ebp - 0x118]
add esp, 0x48
mov eax, dword [edi]
nop
cmp eax, 3
jne 0x41420f
mov eax, dword [ebp - 0x124]
mov ecx, dword [eax + 0x812c]
test ecx, ecx
je 0x41420f
mov dword [ebp - 0x120], eax
lea edx, [ebp - 0x120]
mov eax, dword [ecx]
push edx
call dword [eax + 8]
mov eax, 4
xchg dword [edi], eax
push 2
push esi
call dword [sym.imp.WS2_32.dll_shutdown]
push esi
call dword [sym.imp.WS2_32.dll_closesocket]
mov edx, dword [ebp - 0x128]
or esi, 0xffffffff
jmp 0x414451
test eax, eax
jns 0x414336
push dword [edi + 0x81fc]
mov eax, dword [0x62da44]
xorps xmm0, xmm0
push dword [edi + 0x81f8]
push esi
mov eax, dword [eax]
push str.early_closing_socket__d__sent:_zu_
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x130], esp
mov eax, dword [eax + 8]
mov dword [ebp - 0x120], eax
movups xmmword [ecx], xmm0
mov dword [ecx + 0x10], 5
mov dword [ecx + 0x14], 0xf
mov eax, dword [str.cspot]
mov dword [ecx], eax
mov al, byte [0x559ac8]
mov byte [ecx + 4], al
mov byte [ecx + 5], 0
push 0x24c
sub esp, 0x18
mov byte [ebp - 4], 4
mov edi, esp
mov ecx, edi
push 0x50
movups xmmword [edi], xmm0
mov dword [edi + 0x10], 0
mov dword [edi + 0x14], 0xf
call fcn.00410930
mov dword [edi + 0x10], 0x4c
mov ecx, eax
mov dword [edi], ecx
mov dword [edi + 0x14], 0x4f
movups xmm0, xmmword [str.D:UsersphiliDropboxDevelopmentSpotConnect_spotupnp_srcHTTPstreamer.cpp]
movups xmmword [ecx], xmm0
movups xmm0, xmmword [0x559ae0]
movups xmmword [ecx + 0x10], xmm0
movups xmm0, xmmword [0x559af0]
movups xmmword [ecx + 0x20], xmm0
movups xmm0, xmmword [0x559b00]
movups xmmword [ecx + 0x30], xmm0
movq xmm0, qword [0x559b10]
movq qword [ecx + 0x40], xmm0
mov eax, dword [0x559b18]
mov dword [ecx + 0x48], eax
mov byte [ecx + 0x4c], 0
push dword [0x62da44]
mov byte [ebp - 4], 0
call dword [ebp - 0x120]
add esp, 0x48
push esi
call dword [sym.imp.WS2_32.dll_closesocket]
mov edx, dword [ebp - 0x128]
or esi, 0xffffffff
jmp 0x414451
mov edx, dword [ebp - 0x128]
mov dword [ebp - 0x134], 0xc350
jmp 0x414451
push dword [edi + 0x81fc]
mov eax, dword [0x62da44]
xorps xmm0, xmm0
push dword [edi + 0x81f8]
push esi
mov eax, dword [eax]
push str.HTTP_close__u__sent:_zu_
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x130], esp
mov eax, dword [eax + 8]
mov dword [ebp - 0x128], eax
movups xmmword [ecx], xmm0
mov dword [ecx + 0x10], 5
mov dword [ecx + 0x14], 0xf
mov eax, dword [str.cspot]
mov dword [ecx], eax
mov al, byte [0x559ac8]
mov byte [ecx + 4], al
mov byte [ecx + 5], 0
push 0x235
sub esp, 0x18
mov byte [ebp - 4], 2
mov edi, esp
mov ecx, edi
push 0x50
movups xmmword [edi], xmm0
mov dword [edi + 0x10], 0
mov dword [edi + 0x14], 0xf
call fcn.00410930
mov dword [edi + 0x10], 0x4c
mov ecx, eax
mov dword [edi], ecx
mov dword [edi + 0x14], 0x4f
movups xmm0, xmmword [str.D:UsersphiliDropboxDevelopmentSpotConnect_spotupnp_srcHTTPstreamer.cpp]
movups xmmword [ecx], xmm0
movups xmm0, xmmword [0x559ae0]
movups xmmword [ecx + 0x10], xmm0
movups xmm0, xmmword [0x559af0]
movups xmmword [ecx + 0x20], xmm0
movups xmm0, xmmword [0x559b00]
movups xmmword [ecx + 0x30], xmm0
movq xmm0, qword [0x559b10]
movq qword [ecx + 0x40], xmm0
mov eax, dword [0x559b18]
mov dword [ecx + 0x48], eax
mov byte [ecx + 0x4c], 0
push dword [0x62da44]
mov byte [ebp - 4], 0
call dword [ebp - 0x128]
add esp, 0x48
push esi
call dword [sym.imp.WS2_32.dll_closesocket]
mov ecx, dword [ebp - 0x118]
or esi, 0xffffffff
mov edx, ecx
mov eax, dword [ecx]
nop
cmp eax, 2
jne 0x414451
mov eax, 1
xchg dword [ecx], eax
mov edi, dword [ebp - 0x124]
mov al, byte [edi + 0x2c]
lea ecx, [edi + 0x2c]
nop
test al, al
jne 0x413e90
xor al, al
xchg byte [ecx], al
push dword [ebp - 0x140]
call sub.MSVCP140.dll__Mtx_unlock
add esp, 4
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.0054f742
mov esp, ebp
pop ebp
ret
push 5
call sub.MSVCP140.dll_void___cdecl_std::_Throw_Cpp_error_int_
dec eax
push 6
mov dword [esi + 0x2c], eax
call sub.MSVCP140.dll_void___cdecl_std::_Throw_Cpp_error_int_
int3