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

Disassembly:
push ebp
mov ebp, esp
push ebx
push esi
push edi
mov esi, dword [ebp + 0xc]
mov edi, 0x50eaa0
mov eax, dword [ebp + 8]
push eax
call fcn.00467564
mov ebx, eax
test ebx, ebx
jne 0x467f18
xor eax, eax
jmp 0x46869f
mov dword [ebx + 0x74], 0xb4
cmp si, 0x20
jne 0x467f38
push 8
mov edx, dword [ebx + 0x70]
push edx
push ebx
call fcn.00467618
xor eax, eax
jmp 0x46869f
shr esi, 0x10
test si, 0xffff
je 0x467f55
push 7
mov edx, dword [ebx + 0x70]
push edx
push ebx
call fcn.00467618
xor eax, eax
jmp 0x46869f
push 0
push 0xff
push 0x50ebfc
mov edx, dword [ebx + 0x7c]
push edx
call sub.WSOCK32.dll_recv
mov esi, eax
test esi, esi
jl 0x467f77
mov byte [esi + 0x50ebfc], 0
push 0
push 0
mov eax, dword [0x4fd9ec]
push eax
mov edx, dword [ebx + 0x7c]
push edx
call sub.WSOCK32.dll_WSAAsyncSelect
test esi, esi
jne 0x467fa1
push 8
mov ecx, dword [ebx + 0x70]
push ecx
push ebx
call fcn.00467618
xor eax, eax
jmp 0x46869f
test esi, esi
jge 0x467fb8
push 7
mov edx, dword [ebx + 0x70]
push edx
push ebx
call fcn.00467618
xor eax, eax
jmp 0x46869f
cmp dword [ebx + 0x78], 0
jne 0x468125
xor esi, esi
cmp dword [ebx + 0x6c], 2
jne 0x468113
mov al, byte [0x50ebfd]
sub al, 0x5a
je 0x467ff4
dec al
je 0x4680f9
dec al
je 0x468100
dec al
je 0x468107
jmp 0x46810e
cmp dword [ebx + 0x70], 0
jne 0x468027
cmp dword [ebx + 0x68], 0
jne 0x468027
mov edx, dword [ebx + 0x7c]
mov dword [0x4fe2b0], edx
mov dword [ebx + 0x7c], 0xffffffff
push ebx
call fcn.004674dc
push 0
call fcn.004efe74
mov eax, 1
jmp 0x46869f
mov edx, dword [0x4f2764]
mov dword [0x50eaa4], edx
jmp 0x468083
mov ecx, dword [eax + 0x528]
cmp ecx, dword [ebx + 0x70]
jne 0x468071
cmp dword [ebx + 0x68], 0
jne 0x46808c
mov edx, dword [ebx + 0x7c]
mov dword [eax + 0x86c], edx
mov dword [ebx + 0x7c], 0xffffffff
push ebx
call fcn.004674dc
mov eax, dword [0x50eaa4]
push eax
call fcn.00427ba0
mov eax, 1
jmp 0x46869f
mov edx, dword [0x50eaa4]
mov ecx, dword [edx + 0x870]
mov dword [0x50eaa4], ecx
mov eax, dword [0x50eaa4]
test eax, eax
jne 0x468035
mov edx, dword [0x4fc1a4]
mov dword [edi], edx
jmp 0x4680ec
mov ecx, dword [eax + 0x400]
cmp ecx, dword [ebx + 0x70]
jne 0x4680e2
cmp dword [ebx + 0x68], 0
jne 0x4680e2
mov edx, dword [ebx + 0x7c]
mov dword [eax + 0x44c], edx
mov dword [ebx + 0x7c], 0xffffffff
push ebx
call fcn.004674dc
mov eax, dword [edi]
cmp dword [eax + 0x428], 0
je 0x4680d0
push eax
call fcn.004cfc88
jmp 0x4680d8
mov ecx, dword [edi]
push ecx
call fcn.004d032c
mov eax, 1
jmp 0x46869f
mov edx, dword [edi]
mov ecx, dword [edx + 0x450]
mov dword [edi], ecx
mov eax, dword [edi]
test eax, eax
jne 0x468096
mov esi, 0x5b
jmp 0x468113
mov esi, 0x5b
jmp 0x468113
mov esi, 0x5c
jmp 0x468113
mov esi, 0x5d
jmp 0x468113
mov esi, 0x5e
push esi
mov eax, dword [ebx + 0x70]
push eax
push ebx
call fcn.00467618
xor eax, eax
jmp 0x46869f
xor esi, esi
mov eax, dword [ebx + 0x6c]
sub eax, 2
je 0x468145
dec eax
je 0x4681a8
dec eax
je 0x4681df
dec eax
je 0x468577
jmp 0x468692
mov dl, byte [0x50ebfd]
sub dl, 1
jb 0x468156
dec dl
je 0x46817a
jmp 0x46819e
push 3
push ebx
call fcn.00467bd8
test eax, eax
je 0x468173
mov dword [ebx + 0x6c], 4
mov eax, 1
jmp 0x46869f
xor eax, eax
jmp 0x46869f
push 2
push ebx
call fcn.00467bd8
test eax, eax
je 0x468197
mov dword [ebx + 0x6c], 3
mov eax, 1
jmp 0x46869f
xor eax, eax
jmp 0x46869f
mov esi, 0x5f
jmp 0x468692
cmp byte [0x50ebfd], 0
jne 0x4681d5
push 3
push ebx
call fcn.00467bd8
test eax, eax
je 0x4681ce
mov dword [ebx + 0x6c], 4
mov eax, 1
jmp 0x46869f
xor eax, eax
jmp 0x46869f
mov esi, 0x5b
jmp 0x468692
mov al, byte [0x50ebfd]
sub al, 1
jb 0x468205
sub al, 2
je 0x46854f
dec al
je 0x468559
dec al
je 0x468563
jmp 0x46856d
cmp dword [ebx + 0x70], 0
jne 0x468238
cmp dword [ebx + 0x68], 0
jne 0x468238
mov edx, dword [ebx + 0x7c]
mov dword [0x4fe2b0], edx
mov dword [ebx + 0x7c], 0xffffffff
push ebx
call fcn.004674dc
push 0
call fcn.004efe74
mov eax, 1
jmp 0x46869f
mov edx, dword [0x4f2764]
mov dword [0x50eaac], edx
jmp 0x468395
mov ecx, dword [eax + 0x528]
cmp ecx, dword [ebx + 0x70]
jne 0x468383
cmp dword [ebx + 0x68], 0
jne 0x468289
mov edx, dword [ebx + 0x7c]
mov dword [eax + 0x86c], edx
mov dword [ebx + 0x7c], 0xffffffff
push ebx
call fcn.004674dc
mov eax, dword [0x50eaac]
push eax
call fcn.00427ba0
mov eax, 1
jmp 0x46869f
cmp dword [ebx + 0x68], 1
jne 0x4683a2
cmp byte [0x50ebff], 1
jne 0x4683a2
push 0
call fcn.0040ef0c
pop ecx
mov edx, dword [0x50eaac]
mov dword [edx + 0x868], eax
mov dword [ebx + 0x6c], 5
xor ecx, ecx
mov cl, byte [0x50ec03]
push ecx
xor eax, eax
mov al, byte [0x50ec02]
push eax
xor edx, edx
mov dl, byte [0x50ec01]
push edx
xor ecx, ecx
mov cl, byte [0x50ec00]
push ecx
push 0x4f663a
push 0x50eab4
call sub.USER32.dll_wsprintfA
add esp, 0x18
xor eax, eax
mov al, byte [0x50ec04]
shl eax, 8
xor edx, edx
mov dl, byte [0x50ec05]
add ax, dx
mov ecx, dword [0x50eaac]
mov word [ecx + 0x520], ax
push 0x21
push 0x432
mov eax, dword [0x4fd9ec]
push eax
mov edx, dword [ebx + 0x7c]
push edx
call sub.WSOCK32.dll_WSAAsyncSelect
mov ebx, dword [0x50eaac]
mov eax, dword [ebx + 0x52c]
push eax
movzx edx, word [ebx + 0x520]
push edx
push 0x50eab4
call sub.WSOCK32.dll_inet_addr
push eax
call sub.WSOCK32.dll_htonl
push eax
mov ecx, dword [0x50eaac]
add ecx, 0x3f0
push ecx
push 0x4f6647
push 0x50ebfc
call sub.USER32.dll_wsprintfA
add esp, 0x18
push 0
push 0x50ebfc
call fcn.004efb4c
mov eax, 1
jmp 0x46869f
mov edx, dword [0x50eaac]
mov ecx, dword [edx + 0x870]
mov dword [0x50eaac], ecx
mov eax, dword [0x50eaac]
test eax, eax
jne 0x468249
mov edx, dword [0x4fc1a4]
mov dword [0x50eaa8], edx
jmp 0x468415
mov ecx, dword [eax + 0x400]
cmp ecx, dword [ebx + 0x70]
jne 0x468403
cmp dword [ebx + 0x68], 0
jne 0x468403
mov edx, dword [ebx + 0x7c]
mov dword [eax + 0x44c], edx
mov dword [ebx + 0x7c], 0xffffffff
push ebx
call fcn.004674dc
mov eax, dword [0x50eaa8]
cmp dword [eax + 0x428], 0
je 0x4683ed
push eax
call fcn.004cfc88
jmp 0x4683f9
mov ecx, dword [0x50eaa8]
push ecx
call fcn.004d032c
mov eax, 1
jmp 0x46869f
mov edx, dword [0x50eaa8]
mov ecx, dword [edx + 0x450]
mov dword [0x50eaa8], ecx
mov eax, dword [0x50eaa8]
test eax, eax
jne 0x4683b0
mov edx, dword [0x4f6954]
mov dword [0x50eab0], edx
jmp 0x46853d
mov ecx, dword [eax + 0x400]
cmp ecx, dword [ebx + 0x70]
jne 0x46852b
cmp dword [ebx + 0x68], 1
jne 0x46852b
cmp byte [0x50ebff], 1
jne 0x46852b
push 0
call fcn.0040ef0c
pop ecx
mov edx, dword [0x50eab0]
mov dword [edx + 0x434], eax
mov dword [ebx + 0x6c], 5
xor eax, eax
mov al, byte [0x50ec03]
push eax
xor ecx, ecx
mov cl, byte [0x50ec02]
push ecx
xor eax, eax
mov al, byte [0x50ec01]
push eax
xor edx, edx
mov dl, byte [0x50ec00]
push edx
push 0x4f666f
push 0x50eab4
call sub.USER32.dll_wsprintfA
add esp, 0x18
xor ecx, ecx
mov cl, byte [0x50ec04]
shl ecx, 8
xor eax, eax
mov al, byte [0x50ec05]
add cx, ax
mov edx, dword [0x50eab0]
mov word [edx + 0x404], cx
push 0x21
push 0x432
mov ecx, dword [0x4fd9ec]
push ecx
mov eax, dword [ebx + 0x7c]
push eax
call sub.WSOCK32.dll_WSAAsyncSelect
mov ebx, dword [0x50eab0]
mov eax, dword [ebx + 0x400]
push eax
mov edx, dword [ebx + 0x414]
push edx
mov cx, word [ebx + 0x404]
push ecx
push 0x50eab4
call sub.WSOCK32.dll_inet_addr
push eax
call sub.WSOCK32.dll_htonl
push eax
mov esi, dword [0x50eab0]
mov eax, esi
add eax, 0x230
push eax
add esi, 4
push esi
call fcn.004cff90
mov eax, 1
jmp 0x46869f
mov edx, dword [0x50eab0]
mov ecx, dword [edx + 0x43c]
mov dword [0x50eab0], ecx
mov eax, dword [0x50eab0]
test eax, eax
jne 0x46842f
jmp 0x468692
mov esi, 0x60
jmp 0x468692
mov esi, 0x61
jmp 0x468692
mov esi, 0x62
jmp 0x468692
mov esi, 0x5b
jmp 0x468692
mov al, byte [0x50ebfd]
sub al, 1
jb 0x46859d
sub al, 2
je 0x468678
dec al
je 0x46867f
dec al
je 0x468686
jmp 0x46868d
mov edx, dword [0x4f2764]
mov dword [0x50eac8], edx
jmp 0x468602
mov ecx, dword [eax + 0x528]
cmp ecx, dword [ebx + 0x70]
jne 0x4685f0
cmp dword [ebx + 0x68], 1
jne 0x4685f0
cmp byte [0x50ebff], 1
jne 0x4685f0
mov edx, dword [ebx + 0x7c]
mov dword [eax + 0x86c], edx
mov dword [ebx + 0x7c], 0xffffffff
push ebx
call fcn.004674dc
mov eax, dword [0x50eac8]
push eax
call fcn.0042799c
mov eax, 1
jmp 0x46869f
mov edx, dword [0x50eac8]
mov ecx, dword [edx + 0x870]
mov dword [0x50eac8], ecx
mov eax, dword [0x50eac8]
test eax, eax
jne 0x4685ab
mov edx, dword [0x4f6954]
mov dword [0x50eacc], edx
jmp 0x46866d
mov ecx, dword [eax + 0x400]
cmp ecx, dword [ebx + 0x70]
jne 0x46865b
cmp dword [ebx + 0x68], 1
jne 0x46865b
cmp byte [0x50ebff], 1
jne 0x46865b
mov edx, dword [ebx + 0x7c]
mov dword [eax + 0x438], edx
mov dword [ebx + 0x7c], 0xffffffff
push ebx
call fcn.004674dc
mov eax, dword [0x50eacc]
push eax
call fcn.0046adb8
mov eax, 1
jmp 0x46869f
mov edx, dword [0x50eacc]
mov ecx, dword [edx + 0x43c]
mov dword [0x50eacc], ecx
mov eax, dword [0x50eacc]
test eax, eax
jne 0x468619
jmp 0x468692
mov esi, 0x60
jmp 0x468692
mov esi, 0x61
jmp 0x468692
mov esi, 0x62
jmp 0x468692
mov esi, 0x5b
push esi
mov eax, dword [ebx + 0x70]
push eax
push ebx
call fcn.00467618
xor eax, eax
pop edi
pop esi
pop ebx
pop ebp
ret 8