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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x3c
mov eax, dword [ebp + 8]
push ebx
lea ecx, [eax + 0x2220]
push esi
push edi
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x24], ecx
cmp eax, ecx
ja 0x1002ff51
mov esi, dword [ebp + 0x10]
mov edi, dword [ebp + 8]
xor ebx, ebx
jmp 0x1002fce0
mov eax, dword [ebp - 0x18]
cmp eax, 0x452e
ja 0x1003004b
je 0x10030031
cmp eax, 0x43c2
ja 0x1002fe1d
je 0x1002fdbd
sub eax, 0x1776
je 0x1002fda5
sub eax, 0x2b96
je 0x1002fd5a
sub eax, 0x5b
jne 0x1002ff3f
mov edi, esi
cmp byte [esi], bl
je 0x1002ff3f
lea ebx, [ebx]
movsx eax, byte [edi]
lea ecx, [ebp + 8]
push ecx
push 0x3eab
push ebx
mov dword [ebp + 8], eax
call fcn.10015e30
add esp, 0xc
cmp eax, ebx
je 0x1002ff3f
inc edi
cmp byte [edi], bl
jne 0x1002fd30
jmp 0x1002ff3f
cmp byte [esi], bl
jne 0x1002ff3f
mov edx, dword [ebp + 0x14]
mov ecx, 0x1c33
lea ebx, [ebx]
mov eax, ecx
sub eax, 0x1c33
je 0x1002fd87
sub eax, 0x49
jne 0x1002fd95
pop edi
pop esi
mov eax, edx
pop ebx
mov esp, ebp
pop ebp
ret
cmp ebx, edx
pop ebx
add eax, 0xc458b63
cmp dword [eax], ebx
jle 0x1002fd95
mov byte [edx], bl
add ecx, 0x49
cmp ecx, 0x1c7c
jbe 0x1002fd70
jmp 0x1002ff3f
mov ecx, dword [ebp + 0x14]
push ecx
push esi
push 0x4c6
push ebx
call fcn.10034ec0
add esp, 0x10
jmp 0x1002ff3f
mov eax, dword [ebp + 0x14]
mov edx, dword [ebp + 0xc]
push 0x1db5
push eax
mov byte [eax], bl
mov ecx, dword [edx]
push ebx
lea edx, [ebp - 0x30]
push edx
lea eax, [ebp + 8]
push eax
mov dword [ebp + 8], ecx
call fcn.10001090
add esp, 0x14
mov ecx, 0x496c
mov eax, ecx
sub eax, 0x496c
je 0x1002fe04
sub eax, 0x2e
je 0x1002fdfe
sub eax, 0x2e
jne 0x1002fe0d
mov byte [ebp - 2], bl
jmp 0x1002fe0d
mov byte [ebp - 3], 0x5c
jmp 0x1002fe0d
mov edx, 0x4c6dedf3
mov byte [ebp - 4], 0x2f
add ecx, 0x2e
cmp ecx, 0x49c8
jbe 0x1002fde6
jmp 0x1002ff3f
sub eax, 0x441d
je 0x1002ffbf
sub eax, 0x5b
je 0x1002ff96
sub eax, 0x5b
jne 0x1002ff3f
mov edx, dword [ebp - 0x1c]
lea ecx, [ebp - 0xc]
push ecx
push edx
push edi
push 0x619e
mov dword [ebp + 0x10], edi
mov dword [ebp - 0xc], ebx
xor esi, esi
call fcn.10026970
add esp, 0x10
cmp eax, ebx
jl 0x1002ff1e
push 0x10076c65
lea edx, [ebp - 0x3c]
push edx
push ebx
lea ecx, [eax + edi]
push ebx
mov dword [ebp - 0x3c], ecx
mov ecx, dword [ebp - 0xc]
push ebx
sub ecx, eax
push ebx
push 0x1025
mov dword [ebp - 0x34], ecx
mov dword [ebp - 0x38], ecx
call fcn.10021170
add esp, 0x1c
cmp eax, ebx
je 0x1002ff00
push 0x1007640d
lea eax, [ebp - 0x3c]
push eax
push ebx
push ebx
push ebx
push ebx
push 0x1025
call fcn.10021170
add esp, 0x1c
cmp eax, ebx
jne 0x1002fed1
cmp esi, ebx
je 0x1002feca
lea ecx, [ebp - 0x30]
push ecx
push 0x1cfa
push 0x10077319
call fcn.1001e190
add esp, 0xc
dec esi
jmp 0x1002ff00
cmp dword [ebp - 0x20], ebx
jne 0x1002ff00
jmp 0x1002fed2
inc esi
lea edx, [ebp - 0x3c]
push edx
lea eax, [ebp - 0x30]
push eax
push ebx
push ebx
push ebx
push 0x1155
call fcn.1000eb00
lea ecx, [ebp + 8]
push ecx
lea edx, [ebp - 0x30]
push edx
push 0x7f2a
mov byte [ebp + 8], 0x5c
call fcn.10010e40
add esp, 0x24
mov ecx, dword [ebp - 0x1c]
lea eax, [ebp - 0xc]
push eax
push ecx
push edi
push 0x619e
call fcn.10026970
add esp, 0x10
cmp eax, ebx
jge 0x1002fe60
cmp dword [ebp - 0x2c], ebx
jne 0x1002ff5b
push ebx
push ebx
push ebx
lea edx, [ebp - 0x30]
push edx
push 0x10076c65
push 0x7f7e
call fcn.10026260
add esp, 0x18
mov esi, dword [ebp + 0x10]
mov eax, dword [ebp - 0x18]
add eax, 0x5b
mov dword [ebp - 0x18], eax
cmp eax, dword [ebp - 0x24]
jbe 0x1002fce0
mov eax, dword [ebp - 8]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push 0x74eb
lea eax, [ebp + 8]
push eax
lea ecx, [ebp - 0x30]
push ebx
push ecx
mov dword [ebp + 8], 0xffffffff
call fcn.1001a950
add esp, 0x10
cmp al, 0x5c
jne 0x1002ff3c
cmp esi, ebx
jle 0x1002ff3c
push ebx
push 0x3efe
lea edx, [ebp - 0x30]
push edx
push ebx
push ebx
call fcn.1001ba80
add esp, 0x14
jmp 0x1002ff3c
push 0x74eb
lea eax, [ebp + 8]
push eax
lea ecx, [ebp - 0x30]
push ebx
push ecx
mov dword [ebp + 8], 0xffffffff
call fcn.1001a950
xor edx, edx
add esp, 0x10
cmp al, 0x5c
sete dl
mov dword [ebp - 0x20], edx
jmp 0x1002ff3f
lea eax, [ebp - 4]
mov dword [ebp - 0x1c], eax
mov al, byte [edi]
cmp al, bl
je 0x10030004
cmp byte [edi + 1], 0x3a
jne 0x10030004
lea ecx, [ebp + 8]
push ecx
lea edx, [ebp - 0x30]
push edx
push 0x7f2a
mov byte [ebp + 8], al
call fcn.10010e40
mov al, byte [edi + 1]
lea ecx, [ebp + 8]
push ecx
lea edx, [ebp - 0x30]
push edx
push 0x7f2a
mov byte [ebp + 8], al
call fcn.10010e40
add esp, 0x18
add edi, 2
mov al, byte [edi]
cmp al, 0x2f
je 0x10030012
cmp al, 0x5c
jne 0x1002ff3f
lea eax, [ebp + 8]
push eax
lea ecx, [ebp - 0x30]
push ecx
push 0x7f2a
mov byte [ebp + 8], 0x5c
call fcn.10010e40
add esp, 0xc
inc edi
jmp 0x1002ff3f
push 0x1d22
lea edx, [ebp - 0x30]
push ebx
push edx
call fcn.1002efd0
add esp, 0xc
mov dword [ebp - 8], eax
jmp 0x1002ff3f
cmp eax, 0x5c2a
ja 0x1003012f
je 0x100300f9
sub eax, 0x4589
je 0x1002ff51
sub eax, 0x15eb
je 0x1003009f
sub eax, 0x5b
jne 0x1002ff3f
cmp dword [ebp - 0x10], ebx
je 0x10030166
mov eax, dword [ebp - 0x10]
mov ecx, dword [esi + 0xc]
push ebx
push eax
mov eax, dword [esi + 8]
lea edx, [ecx + esi + 0x40]
push edx
push eax
call dword [sym.imp.WS2_32.dll_recv]
mov dword [ebp - 0x14], eax
jmp 0x1002ff3f
mov ecx, dword [esi + 8]
lea edx, [ebp + 8]
push edx
lea eax, [ebp - 0x10]
mov dword [ebp + 8], ecx
push eax
lea ecx, [ebp - 0xc]
push ecx
push 0x5e8c
mov dword [ebp - 0xc], ebx
mov dword [ebp - 0x10], 5
call fcn.10005600
add esp, 0x10
cmp eax, ebx
je 0x10030166
mov ecx, dword [ebp + 0x14]
mov eax, dword [ecx]
cmp eax, ebx
jg 0x100300de
mov eax, 0x400
mov dword [ecx], eax
mov ecx, dword [esi + 0xc]
cmp ecx, eax
jge 0x100300f1
sub eax, ecx
mov dword [ebp - 0x10], eax
jmp 0x1002ff3f
mov dword [ebp - 0x10], ebx
jmp 0x1002ff3f
mov eax, dword [ebp - 0x14]
cmp eax, ebx
je 0x1003016f
cmp eax, 0xffffffff
jne 0x1002ff3f
push ebx
push ebx
push 0x741d
push ebx
push ebx
push ebx
push ebx
call fcn.1003c0f0
add esp, 0x1c
sub eax, 0x2733
neg eax
pop edi
sbb eax, eax
pop esi
and eax, 0xfffffffe
pop ebx
mov esp, ebp
pop ebp
ret
sub eax, 0x5c85
je 0x1003015b
sub eax, 0x5b
je 0x10030149
sub eax, 0x5b
je 0x1002ff51
jmp 0x1002ff3f
mov edx, dword [esi + 0xc]
mov eax, dword [ebp - 0x14]
mov byte [edx + esi + 0x40], bl
mov dword [ebp - 8], eax
jmp 0x1002ff3f
mov ecx, dword [ebp - 0x14]
add dword [esi + 0xc], ecx
jmp 0x1002ff3f
pop edi
pop esi
xor eax, eax
pop ebx
mov esp, ebp
pop ebp
ret
pop edi
pop esi
or eax, 0xffffffff
pop ebx
mov esp, ebp
pop ebp
ret