Function at 0x482fe0
Capabilities:
Read file on windows
Receive data
Receive data on socket

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x28
push esi
mov esi, dword [ebp + 0xc]
test esi, esi
jne 0x482ff5
xor eax, eax
pop esi
mov esp, ebp
pop ebp
ret
mov eax, dword [esi + 0x4ac]
xorps xmm0, xmm0
movups xmmword [ebp - 0x28], xmm0
push 0
mov eax, dword [eax + 0x30]
test eax, eax
je 0x48300e
push eax
jmp 0x483013
push str.30000
call dword [sym.imp.api_ms_win_crt_convert_l1_1_0.dll_strtod]
fdiv qword [0x55a7e8]
add esp, 8
cmp dword [esi + 0x52c], 0
fstp qword [ebp - 0x10]
jle 0x483050
mov eax, dword [esi + 0x4ac]
mov eax, dword [eax + 0x34]
test eax, eax
je 0x483050
push 0
push eax
call dword [sym.imp.api_ms_win_crt_convert_l1_1_0.dll_strtod]
fdiv qword [0x55a7e8]
add esp, 8
fstp qword [ebp - 0x10]
push ebx
mov ebx, dword [ebp + 0x18]
push edi
mov edi, dword [ebp + 0x10]
push dword [ebx]
push edi
call fcn.0047c080
add esp, 8
test eax, eax
jne 0x4830ce
movsd xmm0, qword [ebp - 0x10]
mov edx, dword [ebp + 8]
nop
mov eax, dword [esi + 0x4a8]
cmp dword [eax + 0x14], 0
jne 0x4830cb
mov eax, dword [ebx]
mov ecx, dword [ebp + 0x14]
cmp eax, ecx
jge 0x48323e
mov ebx, ecx
sub ebx, eax
add eax, edi
xor edi, edi
mov dword [ebp - 4], eax
test edx, edx
je 0x4830d5
push ebx
push eax
push edx
call dword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll__fileno]
add esp, 4
push eax
call dword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll__read]
mov esi, eax
add esp, 0xc
test esi, esi
jns 0x4830c1
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov edi, eax
jmp 0x483141
xor edi, edi
test esi, esi
jne 0x483141
test ebx, ebx
jle 0x483141
or eax, 0xffffffff
pop edi
pop ebx
pop esi
mov esp, ebp
pop ebp
ret
mov eax, dword [esi + 0x4b4]
mulsd xmm0, qword [0x55a7e8]
mov dword [ebp - 0x18], eax
mov eax, 1
mov word [ebp - 0x14], ax
mov eax, dword [esi + 0x4a8]
add eax, 0x14
push eax
cvttsd2si eax, xmm0
push eax
lea eax, [ebp - 0x18]
push 1
push eax
call fcn.0047f650
mov ecx, dword [esi + 0x4a8]
add esp, 0x10
cmp dword [ecx + 0x14], edi
jne 0x4830cb
test eax, eax
jle 0x48313d
push 0
push ebx
push dword [ebp - 4]
push dword [esi + 0x4b4]
call dword [sym.imp.WS2_32.dll_recv]
mov esi, eax
test esi, esi
js 0x48322e
jle 0x4830cb
xor edi, edi
jmp 0x483141
js 0x4830cb
xor esi, esi
mov eax, dword [ebp + 0xc]
mov eax, dword [eax + 0x4a8]
cmp dword [eax + 0x14], 0
jne 0x4830cb
test esi, esi
jg 0x48315e
jne 0x483196
test ebx, ebx
jne 0x4831b0
cmp esi, 0xfffffffe
je 0x4830cb
lea eax, [ebp - 0x28]
push eax
push 1
call fcn.0047e430
add esp, 8
test esi, esi
jle 0x4831be
mov ebx, dword [ebp + 0x18]
mov edi, dword [ebp + 0x10]
add dword [ebx], esi
push dword [ebx]
push edi
call fcn.0047c080
add esp, 8
test eax, eax
jne 0x4830ce
jmp 0x4831c4
jns 0x4831b0
cmp edi, 0x2733
je 0x4830cb
cmp edi, 0x274c
jne 0x4830cb
lea eax, [ebp - 0x28]
push eax
push 1
call fcn.0047e430
add esp, 8
mov ebx, dword [ebp + 0x18]
mov edi, dword [ebp + 0x10]
movsd xmm0, qword [ebp - 0x10]
xorps xmm1, xmm1
comisd xmm0, xmm1
mov esi, dword [ebp + 0xc]
mov edx, dword [ebp + 8]
jb 0x483070
mov eax, dword [ebp - 0x20]
sub eax, dword [esi + 0x4f0]
mov ecx, dword [ebp - 0x28]
sub ecx, dword [esi + 0x4e8]
mov edx, dword [ebp - 0x24]
sbb edx, dword [esi + 0x4ec]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
mulsd xmm0, qword [0x5666a8]
movsd qword [ebp - 8], xmm0
call fcn.0054fb90
movsd xmm1, qword [ebp - 8]
addsd xmm1, xmm0
movsd xmm0, qword [ebp - 0x10]
comisd xmm1, xmm0
ja 0x4830cb
jmp 0x48306c
call dword [sym.imp.KERNEL32.dll_GetLastError]
pop edi
pop ebx
or eax, 0xffffffff
pop esi
mov esp, ebp
pop ebp
ret
pop edi
pop ebx
mov eax, 0xfffffffe
pop esi
mov esp, ebp
pop ebp
ret