Function at 0x4553b0
Capabilities:
Connect socket
Receive data
Receive data on socket
Send data
Send data on socket

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x5b52cb
mov eax, dword fs:[0]
push eax
sub esp, 0x228
mov eax, dword [0x628040]
xor eax, ebp
mov dword [ebp - 0x10], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov esi, ecx
mov dword [ebp - 0x234], esi
cmp byte [esi + 0x408c], 0
jne 0x4553f5
mov al, 2
jmp 0x455625
xorps xmm0, xmm0
mov eax, 2
movdqu xmmword [ebp - 0x120], xmm0
mov word [ebp - 0x120], ax
movzx eax, word [esi + 0x408e]
push eax
call dword [sym.imp.WS2_32.dll_htons]
mov word [ebp - 0x11e], ax
mov ecx, 0x6294b4
lea eax, [esi + 0x4110]
push eax
call fcn.00458270
mov dword [ebp - 0x11c], eax
lea eax, [ebp - 0x120]
push 0x10
push eax
push dword [esi + 0x7c]
call dword [sym.imp.WS2_32.dll_connect]
cmp eax, 0xffffffff
jne 0x455456
mov al, 3
jmp 0x455625
cmp byte [esi + 0x408c], 3
jne 0x455623
push 0xfe
lea eax, [ebp - 0x10e]
mov word [ebp - 0x110], 0x105
push 0
push eax
call fcn.00598070
mov ax, word [esi + 0x4090]
lea edi, [esi + 0x4090]
add esp, 0xc
neg ax
sbb al, al
and al, 2
push 0
mov byte [ebp - 0x10e], al
lea eax, [ebp - 0x110]
push 3
push eax
push dword [esi + 0x7c]
call dword [sym.imp.WS2_32.dll_send]
cmp eax, 3
jne 0x45544f
push 0
push 2
lea eax, [ebp - 0x110]
push eax
push dword [esi + 0x7c]
call dword [sym.imp.WS2_32.dll_recv]
cmp eax, 2
jne 0x45544f
cmp byte [ebp - 0x110], 5
jne 0x45544f
mov al, byte [ebp - 0x10f]
test al, al
je 0x455623
cmp al, 2
jne 0x45544f
push 3
lea eax, [ebp - 0x224]
push edi
lea ecx, [ebp - 0x228]
mov dword [ebp - 0x228], eax
call fcn.0044f930
lea eax, [ebp - 0x1a0]
mov dword [ebp - 4], 0
mov dword [ebp - 0x1a4], eax
lea ecx, [ebp - 0x1a4]
push 3
lea eax, [esi + 0x40d0]
push eax
call fcn.0044f930
push dword [ebp - 0x228]
mov esi, dword [sym.imp.KERNEL32.dll_lstrlenA]
mov byte [ebp - 0x110], 1
call esi
push eax
push dword [ebp - 0x228]
mov dword [ebp - 0x230], eax
mov byte [ebp - 0x10f], al
lea eax, [ebp - 0x10e]
push eax
call fcn.0059a450
mov edi, dword [ebp - 0x230]
add esp, 0xc
push dword [ebp - 0x1a4]
call esi
push eax
push dword [ebp - 0x1a4]
mov byte [ebp + edi - 0x10e], al
lea ecx, [ebp - 0x110]
add edi, 3
mov dword [ebp - 0x230], eax
add ecx, edi
push ecx
call fcn.0059a450
add edi, dword [ebp - 0x230]
lea eax, [ebp - 0x110]
mov esi, dword [ebp - 0x234]
add esp, 0xc
push 0
push edi
push eax
push dword [esi + 0x7c]
call dword [sym.imp.WS2_32.dll_send]
cmp eax, edi
jne 0x455649
push 0
push 2
lea eax, [ebp - 0x110]
push eax
push dword [esi + 0x7c]
call dword [sym.imp.WS2_32.dll_recv]
cmp eax, 2
jne 0x455649
cmp byte [ebp - 0x110], 1
jne 0x455640
cmp byte [ebp - 0x10f], 0
jne 0x455640
mov eax, dword [ebp - 0x1a4]
lea ecx, [ebp - 0x1a0]
cmp eax, ecx
je 0x45560a
push eax
call fcn.00595a53
add esp, 4
mov eax, dword [ebp - 0x228]
lea ecx, [ebp - 0x224]
cmp eax, ecx
je 0x455623
push eax
call fcn.00595a53
add esp, 4
xor al, al
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.005952cc
mov esp, ebp
pop ebp
ret
mov byte [ebp - 0x229], 4
jmp 0x455650
mov byte [ebp - 0x229], 3
mov eax, dword [ebp - 0x1a4]
lea ecx, [ebp - 0x1a0]
cmp eax, ecx
je 0x455669
push eax
call fcn.00595a53
add esp, 4
mov eax, dword [ebp - 0x228]
lea ecx, [ebp - 0x224]
cmp eax, ecx
je 0x455682
push eax
call fcn.00595a53
add esp, 4
mov al, byte [ebp - 0x229]
jmp 0x455625