Function at 0x493fd0
Capabilities:
Receive data
Receive data on socket
Send data
Send data on socket

Disassembly:
sub esp, 0x434
push esi
push edi
call fcn.00508b70
mov edi, eax
test edi, edi
je 0x49450a
mov eax, dword [esp + 0x440]
mov ecx, eax
shr ecx, 0x10
test ecx, ecx
jne 0x4944c2
cmp eax, 0x20
je 0x4944c2
lea edx, [esp + 8]
push 0x432
push edx
call fcn.004232e0
add esp, 8
push 0
lea eax, [esp + 0xc]
push 0x432
push eax
call fcn.00423310
mov edx, dword [0x61a08c]
add esp, 8
push eax
lea ecx, [esp + 0x10]
push ecx
push edx
call dword [sym.imp.WSOCK32.dll_recv]
cmp eax, 0xffffffff
je 0x494047
cmp eax, 1
jg 0x49405a
push 1
call fcn.00493d70
add esp, 4
pop edi
pop esi
add esp, 0x434
ret
lea eax, [esp + 8]
push 0xd
push eax
call fcn.005d9b20
add esp, 8
test eax, eax
je 0x494070
mov byte [eax], 0
lea ecx, [esp + 8]
push 0xa
push ecx
call fcn.005d9b20
add esp, 8
test eax, eax
je 0x494086
mov byte [eax], 0
mov al, byte [esp + 8]
test al, al
jne 0x4940af
mov edx, dword [str._default_]
mov eax, dword [0x5f8af4]
mov cx, word [0x5f8af8]
mov dword [esp + 8], edx
mov dword [esp + 0xc], eax
mov word [esp + 0x10], cx
jmp 0x4940df
lea edx, [esp + 8]
push edx
push 0x5f4cf8
push 0x647c20
call fcn.005d9929
add esp, 0xc
xor eax, eax
jmp 0x4940d0
mov cl, byte [eax + 0x647c20]
mov byte [esp + eax + 8], cl
inc eax
test cl, cl
jne 0x4940d0
mov eax, dword [0x6a0f40]
mov ecx, dword [0x61a08c]
push 0
push 0
push eax
push ecx
call dword [sym.imp.WSOCK32.dll_WSAAsyncSelect]
lea edx, [esp + 8]
push edx
push 0
push 0x917
call fcn.00424130
add esp, 8
push eax
push 0x647c20
call fcn.005d9929
mov al, byte [0x647ae8]
add esp, 0xc
test al, al
je 0x494186
mov eax, 0x647c20
lea edx, [eax + 1]
lea esp, [esp]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x494130
sub eax, edx
push 0xf
lea eax, [eax + 0x647c20]
push 0x5f8ae8
push eax
call fcn.005d9929
mov eax, 0x647c20
add esp, 0xc
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x494157
push 0x647ae8
sub eax, edx
push 0
push 0x918
mov esi, eax
call fcn.00424130
add esp, 8
push eax
lea ecx, [esi + 0x647c20]
push ecx
call fcn.005d9929
add esp, 0xc
mov al, byte [0x6476b0]
test al, al
je 0x494255
push 0x40
push 0x5f4c88
push 0x6476b0
call fcn.005da940
add esp, 0xc
test eax, eax
mov dword [0x647ae4], eax
jne 0x494264
mov eax, 0x647c20
lea edx, [eax + 1]
lea esp, [esp]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4941c0
sub eax, edx
push 0
push 0x919
mov esi, eax
call fcn.00424130
push eax
lea edx, [esi + 0x647c20]
push edx
call fcn.005d9929
mov eax, dword [0x63caac]
push eax
mov dword [0x6870cc], 0
mov dword [0x6870dc], 1
mov ecx, dword [edi]
push 0x647c20
push ecx
call fcn.0052eb30
lea edx, [esp + 0x24]
push edx
push 0x91a
call fcn.00424130
lea eax, [esp + 0x2c]
add esp, 0x24
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x494224
mov ecx, dword [0x61a08c]
push 0
sub eax, edx
push eax
lea eax, [esp + 0x10]
push eax
push ecx
call dword [sym.imp.WSOCK32.dll_send]
push 2
call fcn.00493d70
add esp, 4
pop edi
pop esi
add esp, 0x434
ret
mov dword [0x647ae4], 0
jmp 0x4941b4
mov eax, dword [0x6476ac]
test eax, eax
je 0x4942a0
mov edx, dword [0x63caac]
push edx
mov dword [0x6870cc], 0
mov dword [0x6870dc], 1
mov eax, dword [edi]
push 0x647c20
push eax
call fcn.0052eb30
add esp, 0xc
jmp 0x4942a0
mov ecx, dword [0x647ae4]
push ecx
push 0x1068
push 0x647c20
call fcn.00423310
add esp, 8
push eax
push 0x647c20
call fcn.005da8ba
add esp, 0xc
test eax, eax
je 0x494325
jmp 0x4942d0
lea eax, [esp + 8]
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4942d7
sub eax, edx
push eax
lea edx, [esp + 0xc]
push edx
push 0x647c20
call fcn.005f18c9
add esp, 0xc
test eax, eax
je 0x4943b8
mov eax, dword [0x647ae4]
push eax
push 0x1068
push 0x647c20
call fcn.00423310
add esp, 8
push eax
push 0x647c20
call fcn.005da8ba
add esp, 0xc
test eax, eax
jne 0x4942d0
lea ecx, [esp + 8]
push str._default_
push ecx
call fcn.005f1860
add esp, 8
test eax, eax
je 0x49436e
mov edx, dword [0x647ae4]
push edx
call fcn.005dd72e
mov eax, dword [str._default_]
mov ecx, dword [0x5f8af4]
mov dx, word [0x5f8af8]
add esp, 4
mov dword [esp + 8], eax
mov dword [esp + 0xc], ecx
mov word [esp + 0x10], dx
jmp 0x4942a0
lea eax, [esp + 8]
push eax
push 0x91b
call fcn.00424130
lea eax, [esp + 0x10]
add esp, 8
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x494387
push 0
sub eax, edx
mov edx, dword [0x61a08c]
push eax
lea ecx, [esp + 0x10]
push ecx
push edx
call dword [sym.imp.WSOCK32.dll_send]
push 2
call fcn.00493d70
add esp, 4
pop edi
pop esi
add esp, 0x434
ret
mov eax, dword [0x6a0f40]
mov ecx, dword [0x61a08c]
push 0x22
push 0x8030
push eax
push ecx
call dword [sym.imp.WSOCK32.dll_WSAAsyncSelect]
mov edx, dword [0x647ae4]
push edx
push 0x1068
push 0x647c20
call fcn.00423310
add esp, 8
push eax
push 0x647c20
call fcn.005da8ba
add esp, 0xc
test eax, eax
je 0x49450a
push 0x647c20
call fcn.004ce5b0
add esp, 4
test eax, eax
jne 0x49450a
push 0x647c20
call fcn.00493f40
add esp, 4
test eax, eax
je 0x4944a7
push 0xa
push 0x647c20
call fcn.005d9b20
add esp, 8
test eax, eax
jne 0x494455
mov edi, 0x647c20
dec edi
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x494444
mov ax, word [0x5f55fc]
mov word [edi], ax
mov eax, 0x647c20
lea edx, [eax + 1]
lea ecx, [ecx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x494460
mov ecx, dword [0x61a08c]
push 0
sub eax, edx
push eax
push 0x647c20
push ecx
call dword [sym.imp.WSOCK32.dll_send]
cmp eax, 0xffffffff
jne 0x4944a7
call dword [sym.imp.WSOCK32.dll_WSAGetLastError]
cmp eax, 0x2733
je 0x494514
push 2
call fcn.00493d70
add esp, 4
pop edi
pop esi
add esp, 0x434
ret
push 0x1068
push 0x647c20
call fcn.004232e0
add esp, 8
pop edi
pop esi
add esp, 0x434
ret
mov eax, dword [0x6476ac]
test eax, eax
je 0x49450a
mov al, byte [0x647ae8]
test al, al
je 0x49450a
push 0x647ae8
push 0
push 0x916
call fcn.00424130
add esp, 8
push eax
push 0x647c20
call fcn.005d9929
mov edx, dword [0x63caac]
mov eax, dword [edi]
push edx
push 0x647c20
push eax
call fcn.0052eb30
add esp, 0x18
push 2
call fcn.00493d70
add esp, 4
pop edi
pop esi
add esp, 0x434
ret