Function at 0x42a320
Capabilities:
Receive data
Receive data on socket

Disassembly:
push ebp
push edi
push esi
push ebx
sub esp, 0x2c
mov esi, dword [sym.imp.WS2_32.dll_recv]
mov edi, dword [esp + 0x40]
mov eax, dword [edi]
mov dword [esp + 0xc], 2
mov dword [esp + 8], 0x100000
mov dword [0x25bf620], eax
mov dword [esp + 4], 0x24bf620
mov dword [esp], eax
call esi
sub esp, 0x10
test eax, eax
js 0x42a6e1
je 0x42a6d7
mov byte [eax + 0x24bf620], 0
mov ebx, eax
xor eax, eax
jmp 0x42a391
cmp dl, 0x3b
je 0x42a39f
add eax, 1
cmp dl, 0xd
je 0x42a4a8
cmp ebx, eax
jle 0x42a450
movzx edx, byte [eax + 0x24bf620]
mov ecx, eax
cmp dl, 0xa
jne 0x42a378
add eax, 0x24bf620
mov ecx, dword [edi + 0x100004]
lea edx, [eax + ecx + 1]
sub edx, 0x24bf620
cmp edx, 0xfffff
jg 0x42a4b8
lea ebp, [edi + 4]
sub eax, 0x24bf61f
mov dword [esp + 0xc], 0
add ecx, ebp
mov dword [esp + 8], eax
mov ebx, eax
mov dword [esp + 4], ecx
mov eax, dword [edi]
mov dword [esp], eax
call esi
sub esp, 0x10
test eax, eax
js 0x42a6b5
je 0x42a6d7
mov eax, dword [edi + 0x100004]
mov edx, dword [0x25bf728]
mov dword [0x25bf628], ebp
add eax, ebx
mov dword [edi + 0x100004], eax
mov dword [0x25bf624], eax
mov byte [edi + eax + 4], 0
test byte [edx + 0x18], 4
jne 0x42a640
cmp byte [edi + 0x100094], 0
je 0x42a600
mov byte [edi + 0x100094], 0
mov byte [edi + 4], 0
xor eax, eax
mov dword [edi + 0x100004], 0
add esp, 0x2c
pop ebx
pop esi
pop edi
pop ebp
ret
mov eax, dword [edi + 0x100004]
lea edx, [eax + ebx]
cmp edx, 0xfffff
jg 0x42a560
lea eax, [edi + eax + 4]
mov dword [esp + 0xc], 0
mov dword [esp + 8], ebx
mov dword [esp + 4], eax
mov eax, dword [edi]
mov dword [esp], eax
call esi
sub esp, 0x10
test eax, eax
js 0x42a6b5
je 0x42a6d7
add dword [edi + 0x100004], eax
add esp, 0x2c
xor eax, eax
pop ebx
pop esi
pop edi
pop ebp
ret
lea eax, [ecx + 0x24bf621]
jmp 0x42a3a4
mov byte [edi + 0x100094], 1
mov byte [edi + 4], 0
mov dword [edi + 0x100004], 0
mov dword [esp], str.SCPI_ERROR:_maximum_command_length_exceeded._Command_will_not_be_parsed._nWaiting_for_NEWLINE_to_continue._n
call sym._pprintf
cmp ebx, 0xfffff
jg 0x42a524
jmp 0x42a690
mov dword [esp + 0xc], 2
mov dword [esp + 8], 0x100000
mov dword [esp + 4], 0x24bf620
mov eax, dword [edi]
mov dword [esp], eax
call esi
sub esp, 0x10
mov ebx, eax
test eax, eax
jle 0x42a54f
cmp ebx, 0xfffff
jle 0x42a690
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0x100000
mov dword [esp + 4], 0x24bf620
mov eax, dword [edi]
mov dword [esp], eax
call esi
sub esp, 0x10
cmp byte [0x25bf61f], 0xa
jne 0x42a4f0
xor eax, eax
add esp, 0x2c
pop ebx
pop esi
pop edi
pop ebp
ret
mov byte [edi + 0x100094], 1
mov byte [edi + 4], 0
mov dword [edi + 0x100004], 0
mov dword [esp], str.SCPI_ERROR:_maximum_command_length_exceeded._Command_will_not_be_parsed._nWaiting_for_NEWLINE_to_continue._n
call sym._pprintf
cmp ebx, 0x100000
je 0x42a5c4
jmp 0x42a690
mov dword [esp + 0xc], 2
mov dword [esp + 8], 0x100000
mov dword [esp + 4], 0x24bf620
mov eax, dword [edi]
mov dword [esp], eax
call esi
sub esp, 0x10
mov ebx, eax
test eax, eax
jle 0x42a54f
cmp ebx, 0xfffff
jle 0x42a690
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0x100000
mov dword [esp + 4], 0x24bf620
mov eax, dword [edi]
mov dword [esp], eax
call esi
sub esp, 0x10
cmp byte [0x25bf61f], 0xa
jne 0x42a590
xor eax, eax
jmp 0x42a551
mov eax, dword [edi + 0x100004]
mov dword [esp + 4], ebp
mov dword [esp], 0x25bfe00
sub eax, 1
mov dword [esp + 8], eax
call sym._SCPI_Parse
mov eax, dword [0x25bf728]
test byte [eax + 0x18], 8
je 0x42a436
call sym.printRecV__
jmp 0x42a436
mov dword [esp + 0x10], eax
mov eax, dword [0x4be2f8]
mov dword [esp + 0xc], ebp
mov dword [esp + 8], str.SCPI_recv:
mov dword [esp + 4], 0x4be2f4
mov dword [esp], eax
call sym._dbgsprintToOutbuf
mov dword [esp], eax
mov dword [0x4be2f8], eax
call sym._pprintf
mov eax, dword [0x4be2f4]
test eax, eax
je 0x42a422
mov eax, dword [0x4be2f8]
mov byte [eax], 0
jmp 0x42a422
mov dword [esp + 0xc], 0
mov dword [esp + 8], ebx
mov dword [esp + 4], 0x24bf620
mov eax, dword [edi]
mov dword [esp], eax
call esi
xor eax, eax
sub esp, 0x10
jmp 0x42a551
mov dword [esp], str.recv
call sym._perror
call dword [sym.imp.WS2_32.dll_WSAGetLastError]
mov dword [esp], str.recv_failed:__d_n
mov dword [esp + 4], eax
call sym._pprintf
mov eax, 0xffffffff
jmp 0x42a446
mov dword [esp], str.recv
call sym._perror
mov eax, 0xffffffff
jmp 0x42a446