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

Disassembly:
sub esp, 0x104
mov eax, dword [0x661374]
xor eax, esp
mov dword [esp + 0x100], eax
mov eax, dword [esp + 0x10c]
push ebx
push esi
mov esi, dword [esp + 0x110]
add eax, 0xfffffffd
push edi
mov edi, dword [esi + 0x10]
cmp eax, 4
ja case.0x45bb74.4
jmp dword [eax*4 + 0x45be7c]
mov eax, dword [esi + 0x148]
movzx ecx, word [esi + 0x144]
movzx ebx, byte [eax + 2]
movzx eax, byte [eax + 3]
shl ebx, 8
or ebx, eax
lea eax, [ecx + 1]
movzx eax, ax
cmp eax, ebx
jne 0x45bba8
mov dword [esi + 0x18], 0
jmp 0x45bbbf
cmp ecx, ebx
jne 0x45bc62
push ebx
push 0x5d0774
push edi
call fcn.00435090
add esp, 0xc
mov word [esi + 0x144], bx
mov eax, dword [esi + 0x14c]
mov byte [eax], 0
mov eax, dword [esi + 0x14c]
mov byte [eax + 1], 4
movzx edx, word [esi + 0x144]
mov eax, dword [esi + 0x14c]
mov ecx, edx
shr ecx, 8
mov byte [eax + 2], cl
mov eax, dword [esi + 0x14c]
mov byte [eax + 3], dl
lea eax, [esi + 0xb0]
push dword [esi + 0x130]
push eax
push 0
push 4
push dword [esi + 0x14c]
push dword [esi + 0x14]
call dword [sym.imp.WS2_32.dll_sendto]
test eax, eax
js 0x45bd96
mov eax, dword [esi + 0x13c]
xor ecx, ecx
add eax, 4
cmp dword [esi + 0x134], eax
lea eax, [esi + 0x28]
push eax
setl cl
lea ecx, [ecx*2 + 1]
mov dword [esi], ecx
call fcn.0059e33f
add esp, 4
xor eax, eax
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x100]
xor ecx, esp
call fcn.00593bac
add esp, 0x104
ret
push eax
push ebx
push 0x5d07a0
push edi
call fcn.00435090
add esp, 0x10
xor eax, eax
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x100]
xor ecx, esp
call fcn.00593bac
add esp, 0x104
ret
xor eax, eax
mov word [esi + 0x144], ax
mov dword [esi + 0x18], eax
mov eax, dword [esi + 0x14c]
mov byte [eax], 0
mov eax, dword [esi + 0x14c]
mov byte [eax + 1], 4
movzx edx, word [esi + 0x144]
mov eax, dword [esi + 0x14c]
mov ecx, edx
shr ecx, 8
mov byte [eax + 2], cl
mov eax, dword [esi + 0x14c]
mov byte [eax + 3], dl
lea eax, [esi + 0xb0]
push dword [esi + 0x130]
push eax
push 0
push 4
push dword [esi + 0x14c]
push dword [esi + 0x14]
call dword [sym.imp.WS2_32.dll_sendto]
test eax, eax
js 0x45bd96
lea eax, [esi + 0x28]
mov dword [esi], 1
push eax
call fcn.0059e33f
add esp, 4
xor eax, eax
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x100]
xor ecx, esp
call fcn.00593bac
add esp, 0x104
ret
mov eax, dword [esi + 0x18]
inc eax
push eax
mov dword [esi + 0x18], eax
movzx eax, word [esi + 0x144]
inc eax
movzx eax, ax
push eax
push 0x5d07e0
push edi
call fcn.00435090
mov eax, dword [esi + 0x18]
add esp, 0x10
cmp eax, dword [esi + 0x20]
jle 0x45bd6e
pop edi
mov dword [esi + 8], 0xffffff9d
xor eax, eax
mov dword [esi], 3
pop esi
pop ebx
mov ecx, dword [esp + 0x100]
xor ecx, esp
call fcn.00593bac
add esp, 0x104
ret
push dword [esi + 0x130]
lea eax, [esi + 0xb0]
push eax
push 0
push 4
push dword [esi + 0x14c]
push dword [esi + 0x14]
call dword [sym.imp.WS2_32.dll_sendto]
test eax, eax
jns 0x45be2f
push 0x100
lea eax, [esp + 0x10]
push eax
call dword [sym.imp.WS2_32.dll_WSAGetLastError]
push eax
call fcn.00420cc0
push eax
push 0x5c897c
push edi
call fcn.00434fc0
add esp, 0x18
mov eax, 0x37
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x100]
xor ecx, esp
call fcn.00593bac
add esp, 0x104
ret
mov eax, dword [esi + 0x14c]
mov byte [eax], 0
mov eax, dword [esi + 0x14c]
mov byte [eax + 1], 5
movzx edx, word [esi + 0x144]
mov eax, dword [esi + 0x14c]
mov ecx, edx
shr ecx, 8
mov byte [eax + 2], cl
mov eax, dword [esi + 0x14c]
mov byte [eax + 3], dl
lea eax, [esi + 0xb0]
push dword [esi + 0x130]
push eax
push 0
push 4
push dword [esi + 0x14c]
push dword [esi + 0x14]
call dword [sym.imp.WS2_32.dll_sendto]
mov dword [esi], 3
pop edi
pop esi
xor eax, eax
pop ebx
mov ecx, dword [esp + 0x100]
xor ecx, esp
call fcn.00593bac
add esp, 0x104
ret
push 0x5d0810
push 0x5c897c
push edi
call fcn.00434fc0
mov ecx, dword [esp + 0x118]
add esp, 0xc
mov eax, 0x47
pop edi
pop esi
pop ebx
xor ecx, esp
call fcn.00593bac
add esp, 0x104
ret