Function at 0x4249b0
Capabilities:
Receive data
Receive data on socket
Resolve function by parsing pe exports

Disassembly:
push ebp
push edi
push esi
push ebx
mov ebx, ecx
sub esp, 0x1ac
lea eax, [esp + 0xa0]
mov dword [esp], 0
mov dword [esp + 4], eax
call sym._clock_gettime
mov eax, dword [esp + 0xa0]
mov dword [esp], 0
mov edi, dword [esp + 0xa4]
mov dword [esp + 0x38], eax
lea eax, [esp + 0xa0]
mov dword [esp + 4], eax
call sym._clock_gettime
mov ecx, ebx
call method.Server.InitTrafficLoop__
test al, al
jne 0x424a18
add esp, 0x1ac
pop ebx
pop esi
pop edi
pop ebp
ret
mov ecx, dword [ebx + 0xd4]
mov dword [esp + 0x70], 0
mov esi, 0x10624dd3
mov dword [esp + 0x6c], 0
mov eax, dword [ecx + 0x40]
mov edx, dword [ecx + 0x44]
mov dword [esp + 0x58], 0
mov dword [esp + 0x5c], 0
mov dword [ecx + 0x60], eax
lea eax, [esp + 0xa0]
mov dword [ecx + 0x64], edx
mov dword [esp + 4], eax
mov dword [esp], 0
call sym._clock_gettime
mov ecx, dword [esp + 0xa4]
mov ebp, dword [esp + 0xa0]
mov eax, ecx
sar ecx, 0x1f
mov dword [ebx + 0xc], ebp
imul esi
mov eax, dword [ebx + 0xb8]
sar edx, 6
sub edx, ecx
mov dword [ebx + 0x10], edx
mov dword [eax + 0x10], ebp
mov ebp, dword [0x4786e0]
mov dword [eax + 0x14], edx
test ebp, ebp
jne 0x424add
mov eax, edi
sar edi, 0x1f
fld qword [0x460e60]
mov dword [esp + 0x30], 0
imul esi
mov dword [esp + 0x34], 0
xor ebp, ebp
fstp qword [esp + 0x20]
sar edx, 6
sub edx, edi
mov dword [esp + 0x3c], edx
lea esi, [esi]
nop
cmp byte [ebx + 0xc4], 0
je 0x424b78
call sym._disarm_itimer
lea eax, [esp + 0xa0]
mov dword [esp], 0
mov dword [esp + 4], eax
call sym._clock_gettime
mov esi, dword [esp + 0xa4]
mov eax, 0x10624dd3
mov ecx, dword [esp + 0xa0]
imul esi
mov eax, dword [ebx + 0xb8]
sar esi, 0x1f
mov dword [ebx + 0xc], ecx
sar edx, 6
sub edx, esi
mov dword [ebx + 0x10], edx
mov dword [eax + 0x10], ecx
mov dword [eax + 0x14], edx
mov dword [eax + 8], 0
mov dword [eax + 0xc], 0
mov dword [esp + 4], eax
mov eax, dword [ebx + 0xd0]
mov dword [esp], eax
call sym._EndJob
test al, al
jne 0x4250e0
mov eax, dword [ebx]
mov dword [esp], eax
call sym.Iperf_remove_host_thread_Settings_
mov eax, dword [ebx + 0xd0]
mov dword [esp], eax
call sym._FreeReport
add esp, 0x1ac
pop ebx
pop esi
pop edi
pop ebp
ret
mov eax, dword [ebx]
mov ecx, dword [ebx + 0xb8]
mov edx, dword [eax + 0x78]
test edx, 0x4000000
jne 0x424b96
test dh, 0x10
je 0x424bab
test byte [eax + 0x7c], 4
je 0x424bab
mov esi, dword [ecx + 0x14]
mov edi, dword [ebx + 4]
cmp dword [ecx + 0x10], edi
jg 0x424add
je 0x425010
and edx, 0x1000000
mov byte [ecx + 0x34], 1
jne 0x424d30
fldz
fld qword [esp + 0x20]
mov byte [ecx + 0x60], 0
fcompi st(1)
fstp st(0)
jb 0x424dde
mov esi, dword [eax + 0x68]
mov edx, dword [eax + 0x60]
test ebp, ebp
jle 0x424df0
cmp esi, ebp
mov byte [ecx + 0x34], 1
cmovg esi, ebp
mov dword [esp + 0x28], 0
mov dword [esp + 8], esi
mov dword [esp + 0xc], 0
mov edx, dword [eax + 0x2c]
mov dword [esp + 4], edx
mov eax, dword [eax + 0x60]
mov dword [esp], eax
call dword [sym.imp.WS2_32.dll_recv]
sub esp, 0x10
mov esi, eax
test eax, eax
jle 0x424f40
mov eax, dword [ebx + 0xb8]
add dword [esp + 0x28], esi
cmp byte [ebx + 0xc5], 0
mov byte [eax + 0x34], 0
je 0x424c60
sub ebp, esi
jne 0x424c60
mov edx, dword [ebx + 0xd4]
mov esi, dword [edx + 0x60]
mov edi, dword [edx + 0x64]
mov edx, dword [ebx]
mov dword [eax + 0x20], esi
mov dword [eax + 0x24], edi
test dword [edx + 0x7c], 0x2008
jne 0x425020
mov byte [eax + 0x60], 1
lea esi, [esi]
mov esi, dword [esp + 0x28]
mov edi, esi
sar edi, 0x1f
lea eax, [esp + 0xa0]
mov dword [esp], 0
mov dword [esp + 4], eax
call sym._clock_gettime
mov eax, dword [esp + 0xa0]
mov ecx, dword [esp + 0xa4]
mov dword [ebx + 0xc], eax
mov eax, 0x10624dd3
imul ecx
sar ecx, 0x1f
mov eax, dword [ebx + 0xb8]
sar edx, 6
sub edx, ecx
mov ecx, dword [esp + 0xa0]
add dword [esp + 0x30], esi
mov dword [ebx + 0x10], edx
mov dword [eax + 0x14], edx
mov edx, dword [ebx]
adc dword [esp + 0x34], edi
mov dword [eax + 0x10], ecx
test byte [edx + 0x7b], 1
je 0x424cd2
fild dword [esp + 0x28]
fsubr qword [esp + 0x20]
fstp qword [esp + 0x20]
mov dword [eax + 8], esi
mov dword [eax + 0xc], edi
mov dword [esp + 4], eax
mov eax, dword [ebx + 0xd4]
mov dword [esp], eax
call sym._ReportPacket
mov eax, dword [ebx]
test byte [eax + 0x7c], 4
je 0x424d18
test byte [eax + 0x79], 0x10
jne 0x424d18
mov esi, dword [esp + 0x30]
mov edi, dword [esp + 0x34]
cmp esi, dword [eax + 0xa8]
sbb edi, dword [eax + 0xac]
jge 0x424add
lea esi, [esi]
mov eax, dword [0x4786e0]
test eax, eax
jne 0x424add
jmp 0x424ad0
lea eax, [esp + 0xa0]
mov dword [esp], 0
mov dword [esp + 4], eax
call sym._clock_gettime
mov ecx, dword [esp + 0xa4]
mov edi, dword [esp + 0x3c]
mov eax, 0x10624dd3
mov esi, dword [esp + 0xa0]
imul ecx
sar ecx, 0x1f
sar edx, 6
sub edx, ecx
mov eax, edx
sub eax, edi
mov edi, dword [esp + 0x38]
mov dword [esp + 0x28], eax
fild dword [esp + 0x28]
mov eax, esi
fdiv dword [0x460e5c]
sub eax, edi
mov dword [esp + 0x28], eax
mov eax, dword [ebx]
mov ecx, dword [eax + 0x9c]
fild dword [esp + 0x28]
faddp st(1)
fild qword [eax + 0x98]
test ecx, ecx
jns 0x424da4
fadd dword [0x460e4c]
fstp qword [esp + 0x28]
fld qword [esp + 0x28]
fmul dword [0x460e68]
mov ecx, dword [ebx + 0xb8]
mov dword [esp + 0x3c], edx
mov dword [esp + 0x38], esi
mov byte [ecx + 0x60], 0
fmulp st(1)
fadd qword [esp + 0x20]
fstp qword [esp + 0x20]
fldz
fld qword [esp + 0x20]
fcompi st(1)
fstp st(0)
jae 0x424bcf
mov dword [esp], 4
call sym._delay_loop
jmp 0x424d18
cmp byte [ebx + 0xc5], 0
mov byte [ecx + 0x34], 1
je 0x424be6
test ebp, ebp
jne 0x424be6
lea eax, [esp + 0x44]
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0x5c
mov dword [esp + 4], eax
mov dword [esp], edx
call sym._recvn
mov dword [esp + 0x28], eax
cmp eax, 0x5c
jne 0x42511c
mov eax, dword [esp + 0x44]
mov esi, dword [sym.imp.WS2_32.dll_ntohl]
mov dword [esp], eax
call esi
sub esp, 4
mov dword [esp + 0x44], eax
mov eax, dword [esp + 0x74]
mov dword [esp], eax
call esi
mov edx, dword [ebx + 0xb8]
sub esp, 4
mov dword [edx + 0x54], eax
mov dword [esp + 0x74], eax
mov eax, dword [esp + 0x70]
mov dword [esp], eax
call esi
mov edx, dword [ebx + 0xb8]
sub esp, 4
mov dword [edx + 0x50], eax
mov dword [esp + 0x70], eax
mov eax, dword [ebx]
mov eax, dword [eax + 0x7c]
test ah, 0x20
jne 0x424fc0
test al, 8
je 0x424f70
mov eax, dword [ebx + 0xd4]
mov edx, dword [eax + 0x44]
mov eax, dword [eax + 0x40]
mov dword [esp + 0x58], eax
mov eax, dword [esp + 0x6c]
mov dword [esp + 0x5c], edx
mov dword [esp], eax
call esi
sub esp, 4
mov esi, dword [esp + 0x58]
mov edx, dword [esp + 0x5c]
mov dword [esp + 0x6c], eax
mov ecx, dword [ebx + 0xb8]
mov ebp, dword [esp + 0x74]
mov dword [ecx + 0x20], esi
mov esi, dword [ebx + 0xd4]
mov dword [ecx + 0x24], edx
mov eax, dword [ecx + 0x20]
mov edx, dword [ecx + 0x24]
mov dword [esi + 0x60], eax
mov dword [esi + 0x64], edx
mov esi, dword [ebx]
sub ebp, 0x5c
jne 0x424f58
mov dword [ecx + 0x28], eax
mov eax, dword [esp + 0x6c]
mov dword [ecx + 0x2c], edx
mov dword [ecx + 0x58], eax
mov esi, dword [esi + 0x68]
xor eax, eax
mov byte [ecx + 0x60], 1
test esi, esi
cmovg esi, eax
mov dword [esp + 8], 0xea
mov dword [esp + 4], str.Server.cpp
mov dword [esp], str.invalid_burst_read_req_size
call sym._warn
mov ecx, dword [ebx + 0xb8]
cmp byte [ecx + 0x60], 0
je 0x425149
mov esi, 0x5c
xor edi, edi
jmp 0x424c69
jne 0x424ff0
mov byte [ebx + 0xc4], 1
jmp 0x424c60
mov esi, dword [esi + 0x68]
cmp ebp, esi
cmovle esi, ebp
test ebp, ebp
jg 0x424f26
jmp 0x424f04
lea eax, [esp + 0xa0]
mov dword [esp], 0
mov dword [esp + 4], eax
call sym._clock_gettime
mov ecx, dword [esp + 0xa4]
mov eax, 0x10624dd3
mov esi, dword [esp + 0xa0]
imul ecx
sar ecx, 0x1f
mov dword [ebx + 0xc], esi
mov dword [esp + 0x58], esi
sar edx, 6
sub edx, ecx
mov dword [ebx + 0x10], edx
mov dword [esp + 0x5c], edx
jmp 0x424ec0
mov eax, dword [esp + 0x58]
mov dword [esp], eax
call esi
sub esp, 4
mov dword [esp + 0x58], eax
mov eax, dword [esp + 0x5c]
mov dword [esp], eax
call esi
sub esp, 4
mov edx, eax
mov dword [esp + 0x5c], eax
mov esi, dword [esp + 0x58]
jmp 0x424ec0
call dword [sym.imp.WS2_32.dll_WSAGetLastError]
cmp eax, 0x2733
jne 0x425040
add dword [esp + 0x28], esi
jmp 0x424c60
cmp esi, dword [ebx + 8]
jg 0x424add
jmp 0x424bab
mov edx, dword [esp + 0x58]
mov dword [eax + 0x44], edx
mov edx, dword [esp + 0x5c]
mov dword [eax + 0x48], edx
mov edx, dword [esp + 0x6c]
mov dword [eax + 0x58], edx
jmp 0x424c56
lea eax, [esp + 0xa0]
mov byte [ebx + 0xc4], 1
mov dword [esp + 4], eax
mov dword [esp], 0
call sym._clock_gettime
mov ecx, dword [esp + 0xa4]
mov eax, 0x10624dd3
mov esi, dword [esp + 0xa0]
imul ecx
mov eax, ecx
mov dword [ebx + 0xc], esi
sar eax, 0x1f
sar edx, 6
sub edx, eax
mov dword [ebx + 0x10], edx
mov dword [esp + 0x14], edx
mov dword [esp + 0x10], esi
mov eax, dword [ebx]
mov eax, dword [eax + 0x28]
mov dword [esp + 8], str._stcp_recv___ld._ld_
mov dword [esp + 4], 0x100
mov dword [esp + 0xc], eax
lea eax, [esp + 0xa0]
mov dword [esp], eax
call dword [sym.imp.msvcrt.dll__snprintf]
lea eax, [esp + 0xa0]
mov dword [esp + 8], 0x115
mov dword [esp + 4], str.Server.cpp
mov dword [esp], eax
mov byte [esp + 0x19f], 0
call sym._warn_errno
jmp 0x424c60
mov eax, dword [ebx + 0xc8]
mov dword [esp], eax
call dword [sym.imp.WS2_32.dll_closesocket]
sub esp, 4
cmp eax, 0xffffffff
jne 0x424b50
mov dword [esp + 8], 0x139
mov dword [esp + 4], str.Server.cpp
mov dword [esp], str.server_close
call sym._warn_errno
jmp 0x424b50
mov edx, dword [esp + 0x28]
test edx, edx
jle 0x424add
mov dword [esp + 8], 0xee
mov dword [esp + 4], str.Server.cpp
mov dword [esp], str.partial_readn
call sym._warn
jmp 0x424add
mov eax, dword [ebx]
jmp 0x424bee