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

Disassembly:
push ebp
mov ebp, esp
add esp, 0xfffffc14
push ebx
push esi
push edi
push dword [ebp + 8]
call fcn.0048840c
mov ebx, eax
test ebx, ebx
jne 0x488f58
xor eax, eax
jmp 0x4897c8
mov edx, dword [ebp + 0xc]
shr edx, 0x10
test dx, 0xffff
je 0x488f77
push 7
push dword [ebx + 0x70]
push ebx
call fcn.004884c4
xor eax, eax
jmp 0x4897c8
mov dword [ebx + 0x74], 0xb4
push 0x3b5
lea edx, [ebp - 0x3ec]
push edx
call fcn.0042e6b1
xor esi, esi
push 0
lea eax, [esi + 1]
mov edx, 0x3b5
sub edx, eax
push edx
lea ecx, [ebp - 0x3ec]
add ecx, esi
push ecx
push dword [ebx + 0x7c]
call sub.WSOCK32.dll_recv
mov edi, eax
cmp edi, 0xffffffff
je 0x488fda
test edi, edi
jne 0x488fd0
test esi, esi
jne 0x488fda
push 8
push dword [ebx + 0x70]
push ebx
call fcn.004884c4
xor eax, eax
jmp 0x4897c8
add esi, edi
cmp esi, 0x383
jl 0x488f91
cmp word [ebp + 0xc], 0x20
jne 0x488ff3
push 8
push dword [ebx + 0x70]
push ebx
call fcn.004884c4
xor eax, eax
jmp 0x4897c8
push 0
push 0
push dword [0x56f018]
push dword [ebx + 0x7c]
call sub.WSOCK32.dll_WSAAsyncSelect
cmp dword [ebx + 0x78], 2
jne 0x48918b
mov eax, dword [ebx + 0x6c]
cmp eax, 2
je 0x489020
cmp eax, 3
jne 0x489175
xor edi, edi
lea eax, [ebp - 0x3ec]
jmp 0x48902b
inc eax
cmp byte [eax], 0x20
je 0x48902a
push 0x20
push eax
call fcn.0054e1ec
add esp, 8
test eax, eax
je 0x489055
jmp 0x489042
inc eax
cmp byte [eax], 0x20
je 0x489041
cmp byte [eax], 0
je 0x489055
push eax
call fcn.005570e0
pop ecx
mov edi, eax
cmp dword [ebx + 0x6c], 2
jne 0x489079
cmp edi, 0x191
jne 0x48906a
xor eax, eax
jmp 0x4897c8
cmp edi, 0x197
jne 0x489079
xor eax, eax
jmp 0x4897c8
cmp edi, 0xc8
jne 0x489175
mov esi, dword [0x55f25c]
test esi, esi
je 0x4890ce
mov eax, dword [esi + 8]
cmp eax, dword [ebx + 0x70]
jne 0x4890c4
cmp dword [ebx + 0x68], 0
jne 0x4890c4
mov edx, dword [ebx + 0x7c]
mov dword [esi + 4], edx
mov dword [ebx + 0x7c], 0xffffffff
push ebx
call fcn.00488394
push 0
push dword [esi + 4]
call fcn.00528189
mov eax, 1
jmp 0x4897c8
mov esi, dword [esi + 0x1e28]
test esi, esi
jne 0x48908f
mov esi, dword [0x561210]
test esi, esi
je 0x489119
mov eax, dword [esi + 0x52c]
cmp eax, dword [ebx + 0x70]
jne 0x48910f
cmp dword [ebx + 0x68], 0
jne 0x489119
mov edx, dword [ebx + 0x7c]
mov dword [esi + 0x884], edx
mov dword [ebx + 0x7c], 0xffffffff
push ebx
call fcn.00488394
push esi
call fcn.00439918
mov eax, 1
jmp 0x4897c8
mov esi, dword [esi + 0x88c]
test esi, esi
jne 0x4890d8
mov esi, dword [0x56d9cc]
test esi, esi
je 0x489175
mov eax, dword [esi + 0x340]
cmp eax, dword [ebx + 0x70]
jne 0x48916b
cmp dword [ebx + 0x68], 0
jne 0x48916b
mov edx, dword [ebx + 0x7c]
mov dword [esi + 0x3c4], edx
mov dword [ebx + 0x7c], 0xffffffff
push ebx
call fcn.00488394
cmp dword [esi + 0x374], 0
je 0x48915b
push esi
call fcn.00504519
jmp 0x489161
push esi
call fcn.00504c63
mov eax, 1
jmp 0x4897c8
mov esi, dword [esi + 0x3cc]
test esi, esi
jne 0x489123
mov edi, 0x5b
push edi
push dword [ebx + 0x70]
push ebx
call fcn.004884c4
xor eax, eax
jmp 0x4897c8
cmp dword [ebx + 0x78], 0
jne 0x4892ea
xor edi, edi
cmp dword [ebx + 0x6c], 2
jne 0x4892d9
mov al, byte [ebp - 0x3eb]
sub al, 0x5a
je 0x4891c8
dec al
je 0x4892bf
dec al
je 0x4892c6
dec al
je 0x4892cd
jmp 0x4892d4
mov esi, dword [0x55f25c]
test esi, esi
je 0x489211
mov eax, dword [esi + 8]
cmp eax, dword [ebx + 0x70]
jne 0x489207
cmp dword [ebx + 0x68], 0
jne 0x489207
mov edx, dword [ebx + 0x7c]
mov dword [esi + 4], edx
mov dword [ebx + 0x7c], 0xffffffff
push ebx
call fcn.00488394
push 0
push dword [esi + 4]
call fcn.00528189
mov eax, 1
jmp 0x4897c8
mov esi, dword [esi + 0x1e28]
test esi, esi
jne 0x4891d2
mov esi, dword [0x561210]
test esi, esi
je 0x48925c
mov eax, dword [esi + 0x52c]
cmp eax, dword [ebx + 0x70]
jne 0x489252
cmp dword [ebx + 0x68], 0
jne 0x48925c
mov edx, dword [ebx + 0x7c]
mov dword [esi + 0x884], edx
mov dword [ebx + 0x7c], 0xffffffff
push ebx
call fcn.00488394
push esi
call fcn.00439918
mov eax, 1
jmp 0x4897c8
mov esi, dword [esi + 0x88c]
test esi, esi
jne 0x48921b
mov esi, dword [0x56d9cc]
test esi, esi
je 0x4892b8
mov eax, dword [esi + 0x340]
cmp eax, dword [ebx + 0x70]
jne 0x4892ae
cmp dword [ebx + 0x68], 0
jne 0x4892ae
mov edx, dword [ebx + 0x7c]
mov dword [esi + 0x3c4], edx
mov dword [ebx + 0x7c], 0xffffffff
push ebx
call fcn.00488394
cmp dword [esi + 0x374], 0
je 0x48929e
push esi
call fcn.00504519
jmp 0x4892a4
push esi
call fcn.00504c63
mov eax, 1
jmp 0x4897c8
mov esi, dword [esi + 0x3cc]
test esi, esi
jne 0x489266
mov edi, 0x5b
jmp 0x4892d9
mov edi, 0x5b
jmp 0x4892d9
mov edi, 0x5c
jmp 0x4892d9
mov edi, 0x5d
jmp 0x4892d9
mov edi, 0x5e
push edi
push dword [ebx + 0x70]
push ebx
call fcn.004884c4
xor eax, eax
jmp 0x4897c8
xor edi, edi
mov eax, dword [ebx + 0x6c]
sub eax, 2
je 0x48930a
dec eax
je 0x48936d
dec eax
je 0x4893a4
dec eax
je 0x4896d4
jmp 0x4897bc
mov dl, byte [ebp - 0x3eb]
sub dl, 1
jb 0x48931b
dec dl
je 0x48933f
jmp 0x489363
push 4
push ebx
call fcn.00488aaa
test eax, eax
je 0x489338
mov dword [ebx + 0x6c], 4
mov eax, 1
jmp 0x4897c8
xor eax, eax
jmp 0x4897c8
push 3
push ebx
call fcn.00488aaa
test eax, eax
je 0x48935c
mov dword [ebx + 0x6c], 3
mov eax, 1
jmp 0x4897c8
xor eax, eax
jmp 0x4897c8
mov edi, 0x5f
jmp 0x4897bc
cmp byte [ebp - 0x3eb], 0
jne 0x48939a
push 4
push ebx
call fcn.00488aaa
test eax, eax
je 0x489393
mov dword [ebx + 0x6c], 4
mov eax, 1
jmp 0x4897c8
xor eax, eax
jmp 0x4897c8
mov edi, 0x5b
jmp 0x4897bc
mov al, byte [ebp - 0x3eb]
sub al, 1
jb 0x4893cb
sub al, 2
je 0x4896ac
dec al
je 0x4896b6
dec al
je 0x4896c0
jmp 0x4896ca
mov esi, dword [0x55f25c]
test esi, esi
je 0x489414
mov eax, dword [esi + 8]
cmp eax, dword [ebx + 0x70]
jne 0x48940a
cmp dword [ebx + 0x68], 0
jne 0x48940a
mov edx, dword [ebx + 0x7c]
mov dword [esi + 4], edx
mov dword [ebx + 0x7c], 0xffffffff
push ebx
call fcn.00488394
push 0
push dword [esi + 4]
call fcn.00528189
mov eax, 1
jmp 0x4897c8
mov esi, dword [esi + 0x1e28]
test esi, esi
jne 0x4893d5
mov esi, dword [0x561210]
test esi, esi
je 0x48954f
mov eax, dword [esi + 0x52c]
cmp eax, dword [ebx + 0x70]
jne 0x489541
cmp dword [ebx + 0x68], 0
jne 0x48945d
mov edx, dword [ebx + 0x7c]
mov dword [esi + 0x884], edx
mov dword [ebx + 0x7c], 0xffffffff
push ebx
call fcn.00488394
push esi
call fcn.00439918
mov eax, 1
jmp 0x4897c8
cmp dword [ebx + 0x68], 1
jne 0x48954f
cmp byte [ebp - 0x3e9], 1
jne 0x48954f
xor edx, edx
mov dword [esi + 0x878], edx
mov dword [ebx + 0x6c], 5
xor ecx, ecx
mov cl, byte [ebp - 0x3e5]
push ecx
xor eax, eax
mov al, byte [ebp - 0x3e6]
push eax
xor edx, edx
mov dl, byte [ebp - 0x3e7]
push edx
xor ecx, ecx
mov cl, byte [ebp - 0x3e8]
push ecx
push 0x56600e
lea eax, [ebp - 0x34]
push eax
call sub.USER32.dll_wsprintfA
add esp, 0x18
xor edx, edx
mov dl, byte [ebp - 0x3e4]
shl edx, 8
xor ecx, ecx
mov cl, byte [ebp - 0x3e3]
add dx, cx
mov word [esi + 0x51c], dx
push 0x21
push 0x8032
push dword [0x56f018]
push dword [ebx + 0x7c]
call sub.WSOCK32.dll_WSAAsyncSelect
push dword [esi + 0x530]
movzx eax, word [esi + 0x51c]
push eax
lea edx, [ebp - 0x34]
push edx
call sub.WSOCK32.dll_inet_addr
push eax
call sub.WSOCK32.dll_htonl
push eax
lea ecx, [esi + 0x3f0]
push ecx
push 0x56601b
lea eax, [ebp - 0x3ec]
push eax
call sub.USER32.dll_wsprintfA
add esp, 0x18
push dword [esi + 0x888]
push 0
lea edx, [ebp - 0x3ec]
push edx
call fcn.00527eaf
mov eax, 1
jmp 0x4897c8
mov esi, dword [esi + 0x88c]
test esi, esi
jne 0x489422
mov esi, dword [0x56d9cc]
test esi, esi
je 0x4895ab
mov eax, dword [esi + 0x340]
cmp eax, dword [ebx + 0x70]
jne 0x4895a1
cmp dword [ebx + 0x68], 0
jne 0x4895a1
mov edx, dword [ebx + 0x7c]
mov dword [esi + 0x3c4], edx
mov dword [ebx + 0x7c], 0xffffffff
push ebx
call fcn.00488394
cmp dword [esi + 0x374], 0
je 0x489591
push esi
call fcn.00504519
jmp 0x489597
push esi
call fcn.00504c63
mov eax, 1
jmp 0x4897c8
mov esi, dword [esi + 0x3cc]
test esi, esi
jne 0x489559
mov esi, dword [0x566350]
test esi, esi
je 0x4897bc
mov eax, dword [esi + 0x340]
cmp eax, dword [ebx + 0x70]
jne 0x489699
cmp dword [ebx + 0x68], 1
jne 0x489699
cmp byte [ebp - 0x3e9], 1
jne 0x489699
xor edx, edx
mov dword [esi + 0x3a4], edx
mov dword [ebx + 0x6c], 5
xor ecx, ecx
mov cl, byte [ebp - 0x3e5]
push ecx
xor eax, eax
mov al, byte [ebp - 0x3e6]
push eax
xor edx, edx
mov dl, byte [ebp - 0x3e7]
push edx
xor ecx, ecx
mov cl, byte [ebp - 0x3e8]
push ecx
push 0x566043
lea eax, [ebp - 0x34]
push eax
call sub.USER32.dll_wsprintfA
add esp, 0x18
xor edx, edx
mov dl, byte [ebp - 0x3e4]
shl edx, 8
xor ecx, ecx
mov cl, byte [ebp - 0x3e3]
add dx, cx
mov word [esi + 0x34c], dx
push 0x21
push 0x8032
push dword [0x56f018]
push dword [ebx + 0x7c]
call sub.WSOCK32.dll_WSAAsyncSelect
push dword [esi + 0x3b0]
push dword [esi + 0x340]
push dword [esi + 0x35c]
mov ax, word [esi + 0x34c]
push eax
lea edx, [ebp - 0x34]
push edx
call sub.WSOCK32.dll_inet_addr
push eax
call sub.WSOCK32.dll_htonl
push eax
lea ecx, [esi + 0x234]
push ecx
add esi, 4
push esi
call fcn.0050483e
mov eax, 1
jmp 0x4897c8
mov esi, dword [esi + 0x3b4]
test esi, esi
jne 0x4895b9
jmp 0x4897bc
mov edi, 0x60
jmp 0x4897bc
mov edi, 0x61
jmp 0x4897bc
mov edi, 0x62
jmp 0x4897bc
mov edi, 0x5b
jmp 0x4897bc
mov al, byte [ebp - 0x3eb]
sub al, 1
jb 0x4896fb
sub al, 2
je 0x4897a2
dec al
je 0x4897a9
dec al
je 0x4897b0
jmp 0x4897b7
mov esi, dword [0x561210]
test esi, esi
je 0x48974f
mov eax, dword [esi + 0x52c]
cmp eax, dword [ebx + 0x70]
jne 0x489745
cmp dword [ebx + 0x68], 1
jne 0x489745
cmp byte [ebp - 0x3e9], 1
jne 0x489745
mov edx, dword [ebx + 0x7c]
mov dword [esi + 0x884], edx
mov dword [ebx + 0x7c], 0xffffffff
push ebx
call fcn.00488394
push esi
call fcn.0043971e
mov eax, 1
jmp 0x4897c8
mov esi, dword [esi + 0x88c]
test esi, esi
jne 0x489705
mov esi, dword [0x566350]
test esi, esi
je 0x4897bc
mov eax, dword [esi + 0x340]
cmp eax, dword [ebx + 0x70]
jne 0x489796
cmp dword [ebx + 0x68], 1
jne 0x489796
cmp byte [ebp - 0x3e9], 1
jne 0x489796
mov edx, dword [ebx + 0x7c]
mov dword [esi + 0x3a8], edx
mov dword [ebx + 0x7c], 0xffffffff
push ebx
call fcn.00488394
push esi
call fcn.0048cb83
mov eax, 1
jmp 0x4897c8
mov esi, dword [esi + 0x3b4]
test esi, esi
jne 0x489759
jmp 0x4897bc
mov edi, 0x60
jmp 0x4897bc
mov edi, 0x61
jmp 0x4897bc
mov edi, 0x62
jmp 0x4897bc
mov edi, 0x5b
push edi
push dword [ebx + 0x70]
push ebx
call fcn.004884c4
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 8