Function at 0x47ef40
Capabilities:
Check for time delay via gettickcount
Create tcp socket
Create udp socket
Get local ipv4 addresses
Get socket information
Get socket status
Receive data
Receive data on socket
Resolve dns
Set socket configuration
Start tcp server

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x56947e
mov eax, dword fs:[0]
push eax
push ecx
mov eax, 0x1a7c8
call fcn.00528110
mov eax, dword [0x5c5ebc]
xor eax, ebp
mov dword [ebp - 0x1c], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x10], esp
mov dword [ebp - 0x1a67c], ecx
call fcn.00460e70
test eax, eax
je 0x47ef92
call fcn.00461150
test eax, eax
jne 0x47f0ac
lea eax, [ebp - 0x1a540]
push eax
call fcn.0042d9b0
add esp, 4
mov dword [ebp - 0x1a680], eax
mov ecx, dword [ebp - 0x1a680]
mov dword [ebp - 0x1a684], ecx
mov dword [ebp - 4], 0
push 0x582cd0
mov edx, dword [ebp - 0x1a684]
push edx
lea eax, [ebp - 0x1a544]
push eax
call fcn.00411930
add esp, 0xc
mov dword [ebp - 0x1a688], eax
mov ecx, dword [ebp - 0x1a688]
call fcn.00415f60
push eax
push 0x582cec
push 0x582cf0
push 0x582d00
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringW]
lea ecx, [ebp - 0x1a544]
call fcn.00415e20
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x1a540]
call fcn.00415e20
lea ecx, [ebp - 0x1a548]
push ecx
call fcn.0042d9b0
add esp, 4
mov dword [ebp - 0x1a68c], eax
mov edx, dword [ebp - 0x1a68c]
mov dword [ebp - 0x1a690], edx
mov dword [ebp - 4], 1
push 0x582d10
mov eax, dword [ebp - 0x1a690]
push eax
lea ecx, [ebp - 0x1a54c]
push ecx
call fcn.00411930
add esp, 0xc
mov dword [ebp - 0x1a694], eax
mov ecx, dword [ebp - 0x1a694]
call fcn.00415f60
push eax
push 0x582d2c
push 0x582d30
push 0x582d44
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringW]
lea ecx, [ebp - 0x1a54c]
call fcn.00415e20
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x1a548]
call fcn.00415e20
call fcn.0043c150
xor eax, eax
jmp 0x48173f
push 0
push 0
mov edx, dword [ebp + 8]
push edx
push 0
push 0
mov ecx, 0x5c8578
call fcn.0044e330
test eax, eax
jne 0x47f0cd
xor eax, eax
jmp 0x48173f
mov eax, dword [ebp + 8]
add eax, 4
mov dword [ebp - 0x2044], eax
mov dword [ebp - 0x14], 0xffffffff
mov byte [ebp - 0x3050], 0
push 0x1000
push 0
lea ecx, [ebp - 0x304f]
push ecx
call fcn.005281f0
add esp, 0xc
mov byte [ebp - 0x1028], 0
push 0x1000
push 0
lea edx, [ebp - 0x1027]
push edx
call fcn.005281f0
add esp, 0xc
mov byte [ebp - 0x2040], 0
push 0x1000
push 0
lea eax, [ebp - 0x203f]
push eax
call fcn.005281f0
add esp, 0xc
mov byte [ebp - 0x1040], 0
mov dword [ebp - 0x18], 0x10
lea ecx, [ebp - 0x18]
push ecx
lea edx, [ebp - 0x1038]
push edx
mov eax, dword [ebp - 0x2044]
mov ecx, dword [eax]
push ecx
call dword [sym.imp.WS2_32.dll_getsockname]
mov dword [ebp - 4], 2
mov dword [ebp - 0x305c], 1
push 8
lea edx, [ebp - 0x305c]
push edx
lea eax, [ebp - 0x2040]
push eax
mov ecx, dword [ebp - 0x2044]
mov edx, dword [ecx]
push edx
mov ecx, dword [ebp - 0x1a67c]
call fcn.004c7cd0
mov dword [ebp - 0x1a698], eax
cmp dword [ebp - 0x1a698], 0
jne 0x47f1be
mov dword [ebp - 0x1a550], 0xffffffff
push 0x5b15cc
lea eax, [ebp - 0x1a550]
push eax
call fcn.005286d1
mov ecx, dword [ebp - 0x305c]
mov byte [ebp + ecx - 0x2040], 0
movsx edx, byte [ebp - 0x2040]
cmp edx, 5
jne 0x47f28e
mov dword [ebp - 0x305c], 1
push 8
lea eax, [ebp - 0x305c]
push eax
lea ecx, [ebp - 0x203f]
push ecx
mov edx, dword [ebp - 0x2044]
mov eax, dword [edx]
push eax
mov ecx, dword [ebp - 0x1a67c]
call fcn.004c7cd0
movsx ecx, byte [ebp - 0x203f]
mov dword [ebp - 0x305c], ecx
cmp dword [ebp - 0x305c], 0xff
jbe 0x47f23e
mov dword [ebp - 0x1a554], 0xffffffff
push 0x5b15cc
lea edx, [ebp - 0x1a554]
push edx
call fcn.005286d1
push 8
lea eax, [ebp - 0x305c]
push eax
lea ecx, [ebp - 0x203e]
push ecx
mov edx, dword [ebp - 0x2044]
mov eax, dword [edx]
push eax
mov ecx, dword [ebp - 0x1a67c]
call fcn.004c7cd0
mov dword [ebp - 0x1a69c], eax
cmp dword [ebp - 0x1a69c], 0
jne 0x47f28c
mov dword [ebp - 0x1a558], 0xffffffff
push 0x5b15cc
lea ecx, [ebp - 0x1a558]
push ecx
call fcn.005286d1
jmp 0x47f2fa
movsx edx, byte [ebp - 0x2040]
cmp edx, 1
jne 0x47f2a9
mov eax, dword [ebp + 8]
push eax
mov ecx, dword [ebp - 0x1a67c]
call fcn.004831e0
movsx ecx, byte [ebp - 0x2040]
cmp ecx, 4
jne 0x47f2c4
mov edx, dword [ebp + 8]
push edx
mov ecx, dword [ebp - 0x1a67c]
call fcn.004822b0
movsx eax, byte [ebp - 0x2040]
cmp eax, 6
jne 0x47f2df
mov ecx, dword [ebp + 8]
push ecx
mov ecx, dword [ebp - 0x1a67c]
call fcn.00481780
mov dword [ebp - 0x1a55c], 0xffffffff
push 0x5b15cc
lea edx, [ebp - 0x1a55c]
push edx
call fcn.005286d1
mov dword [ebp - 0x3054], 0
mov dword [ebp - 0x3058], 1
mov dword [ebp - 0x3054], 0
jmp 0x47f329
mov eax, dword [ebp - 0x3054]
add eax, 1
mov dword [ebp - 0x3054], eax
mov ecx, dword [ebp - 0x3054]
cmp ecx, dword [ebp - 0x305c]
jge 0x47f357
mov edx, dword [ebp - 0x3054]
movsx eax, byte [ebp + edx - 0x203e]
test eax, eax
jne 0x47f355
mov dword [ebp - 0x3058], 0
jmp 0x47f357
jmp 0x47f31a
call fcn.00460e70
mov dword [ebp - 0x1a6a0], eax
cmp dword [ebp - 0x1a6a0], 0
je 0x47f3a9
call fcn.00461150
mov dword [ebp - 0x1a6a4], eax
cmp dword [ebp - 0x1a6a4], 0
je 0x47f3a9
mov ecx, dword [ebp + 8]
push ecx
mov ecx, 0x5c8578
call fcn.00451350
mov dword [ebp - 0x1a6a8], eax
cmp dword [ebp - 0x1a6a8], 0
jne 0x47f3a9
cmp dword [ebp - 0x3058], 0
je 0x47f6d3
mov byte [ebp - 0x203f], 2
push 2
lea edx, [ebp - 0x2040]
push edx
mov eax, dword [ebp - 0x2044]
mov ecx, dword [eax]
push ecx
mov ecx, dword [ebp - 0x1a67c]
call fcn.004c7f70
mov dword [ebp - 0x1a6ac], eax
cmp dword [ebp - 0x1a6ac], 0
jne 0x47f3f7
mov dword [ebp - 0x1a560], 0xffffffff
push 0x5b15cc
lea edx, [ebp - 0x1a560]
push edx
call fcn.005286d1
mov dword [ebp - 0x305c], 2
push 8
lea eax, [ebp - 0x305c]
push eax
lea ecx, [ebp - 0x2040]
push ecx
mov edx, dword [ebp - 0x2044]
mov eax, dword [edx]
push eax
mov ecx, dword [ebp - 0x1a67c]
call fcn.004c7cd0
mov dword [ebp - 0x1a6b0], eax
cmp dword [ebp - 0x1a6b0], 0
jne 0x47f44f
mov dword [ebp - 0x1a564], 0xffffffff
push 0x5b15cc
lea ecx, [ebp - 0x1a564]
push ecx
call fcn.005286d1
movsx edx, byte [ebp - 0x203f]
add edx, 1
mov dword [ebp - 0x305c], edx
cmp dword [ebp - 0x305c], 0xff
ja 0x47f474
cmp dword [ebp - 0x305c], 0
jae 0x47f48f
mov dword [ebp - 0x1a568], 0xffffffff
push 0x5b15cc
lea eax, [ebp - 0x1a568]
push eax
call fcn.005286d1
push 8
lea ecx, [ebp - 0x305c]
push ecx
lea edx, [ebp - 0x203e]
push edx
mov eax, dword [ebp - 0x2044]
mov ecx, dword [eax]
push ecx
mov ecx, dword [ebp - 0x1a67c]
call fcn.004c7cd0
mov dword [ebp - 0x1a6b4], eax
cmp dword [ebp - 0x1a6b4], 0
jne 0x47f4dd
mov dword [ebp - 0x1a56c], 0xffffffff
push 0x5b15cc
lea edx, [ebp - 0x1a56c]
push edx
call fcn.005286d1
mov eax, dword [ebp - 0x305c]
push eax
lea ecx, [ebp - 0x203e]
push ecx
lea edx, [ebp - 0x3050]
push edx
call fcn.0052b270
add esp, 0xc
mov eax, dword [ebp - 0x305c]
mov byte [ebp + eax - 0x3051], 0
movsx ecx, byte [ebp - 0x203f]
movsx edx, byte [ebp + ecx - 0x203e]
mov dword [ebp - 0x305c], edx
cmp dword [ebp - 0x305c], 0xff
ja 0x47f532
cmp dword [ebp - 0x305c], 0
jae 0x47f54d
mov dword [ebp - 0x1a570], 0xffffffff
push 0x5b15cc
lea eax, [ebp - 0x1a570]
push eax
call fcn.005286d1
cmp dword [ebp - 0x305c], 0
jbe 0x47f5d1
push 8
lea ecx, [ebp - 0x305c]
push ecx
movsx edx, byte [ebp - 0x203f]
lea eax, [ebp + edx - 0x203d]
push eax
mov ecx, dword [ebp - 0x2044]
mov edx, dword [ecx]
push edx
mov ecx, dword [ebp - 0x1a67c]
call fcn.004c7cd0
mov dword [ebp - 0x1a6b8], eax
cmp dword [ebp - 0x1a6b8], 0
jne 0x47f5ac
mov dword [ebp - 0x1a574], 0xffffffff
push 0x5b15cc
lea eax, [ebp - 0x1a574]
push eax
call fcn.005286d1
mov ecx, dword [ebp - 0x305c]
push ecx
movsx edx, byte [ebp - 0x203f]
lea eax, [ebp + edx - 0x203d]
push eax
lea ecx, [ebp - 0x1028]
push ecx
call fcn.0052b270
add esp, 0xc
mov edx, dword [ebp - 0x305c]
mov byte [ebp + edx - 0x1028], 0
push 0
push 0
mov eax, dword [ebp + 8]
push eax
lea ecx, [ebp - 0x1028]
push ecx
lea edx, [ebp - 0x3050]
push edx
mov ecx, 0x5c8578
call fcn.0044e330
mov dword [ebp - 0x1a6bc], eax
mov eax, dword [ebp - 0x1a6bc]
mov dword [ebp - 0x3064], eax
cmp dword [ebp - 0x3064], 1
jne 0x47f642
call fcn.00460e70
mov dword [ebp - 0x1a6c0], eax
cmp dword [ebp - 0x1a6c0], 0
je 0x47f642
call fcn.00461150
mov dword [ebp - 0x1a6c4], eax
cmp dword [ebp - 0x1a6c4], 0
jne 0x47f683
mov byte [ebp - 0x203f], 1
push 2
lea ecx, [ebp - 0x2040]
push ecx
mov edx, dword [ebp - 0x2044]
mov eax, dword [edx]
push eax
mov ecx, dword [ebp - 0x1a67c]
call fcn.004c7f70
mov dword [ebp - 0x1a578], 0xffffffff
push 0x5b15cc
lea ecx, [ebp - 0x1a578]
push ecx
call fcn.005286d1
jmp 0x47f6d1
mov byte [ebp - 0x203f], 0
push 2
lea edx, [ebp - 0x2040]
push edx
mov eax, dword [ebp - 0x2044]
mov ecx, dword [eax]
push ecx
mov ecx, dword [ebp - 0x1a67c]
call fcn.004c7f70
mov dword [ebp - 0x1a6c8], eax
cmp dword [ebp - 0x1a6c8], 0
jne 0x47f6d1
mov dword [ebp - 0x1a57c], 0xffffffff
push 0x5b15cc
lea edx, [ebp - 0x1a57c]
push edx
call fcn.005286d1
jmp 0x47f721
mov byte [ebp - 0x203f], 0
push 2
lea eax, [ebp - 0x2040]
push eax
mov ecx, dword [ebp - 0x2044]
mov edx, dword [ecx]
push edx
mov ecx, dword [ebp - 0x1a67c]
call fcn.004c7f70
mov dword [ebp - 0x1a6cc], eax
cmp dword [ebp - 0x1a6cc], 0
jne 0x47f721
mov dword [ebp - 0x1a580], 0xffffffff
push 0x5b15cc
lea eax, [ebp - 0x1a580]
push eax
call fcn.005286d1
mov dword [ebp - 0x3060], 0xa
push 8
lea ecx, [ebp - 0x3060]
push ecx
lea edx, [ebp - 0x2040]
push edx
mov eax, dword [ebp - 0x2044]
mov ecx, dword [eax]
push ecx
mov ecx, dword [ebp - 0x1a67c]
call fcn.004c7cd0
mov dword [ebp - 0x1a6d0], eax
cmp dword [ebp - 0x1a6d0], 0
jne 0x47f779
mov dword [ebp - 0x1a584], 0xffffffff
push 0x5b15cc
lea edx, [ebp - 0x1a584]
push edx
call fcn.005286d1
movsx eax, byte [ebp - 0x2040]
cmp eax, 5
jne 0x480797
movsx ecx, byte [ebp - 0x203f]
cmp ecx, 3
jne 0x480797
push 0x10
push 0
lea edx, [ebp - 0x3180]
push edx
call fcn.005281f0
add esp, 0xc
mov eax, 2
mov word [ebp - 0x3180], ax
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0xc]
mov dword [ebp - 0x317c], edx
push 2
lea eax, [ebp - 0x2038]
push eax
lea ecx, [ebp - 0x317e]
push ecx
call fcn.005289e0
add esp, 0xc
push 0
push 2
push 2
call dword [sym.imp.WS2_32.dll_socket]
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x41d0], 1
mov dword [ebp - 0x31bc], 0x2000
push 4
lea edx, [ebp - 0x31bc]
push edx
push 0x1001
push 0xffff
mov eax, dword [ebp - 0x14]
push eax
call dword [sym.imp.WS2_32.dll_setsockopt]
push 4
lea ecx, [ebp - 0x31bc]
push ecx
push 0x1002
push 0xffff
mov edx, dword [ebp - 0x14]
push edx
call dword [sym.imp.WS2_32.dll_setsockopt]
mov dword [ebp - 0x31a4], 0
mov dword [ebp - 0x41cc], 0
push 0
push 0
lea eax, [ebp - 0x31a4]
push eax
push 0
push 0
push 4
lea ecx, [ebp - 0x41cc]
push ecx
push 0x9800000c
mov edx, dword [ebp - 0x14]
push edx
call dword [sym.imp.WS2_32.dll_WSAIoctl]
mov dword [ebp - 0x31b8], 0
cmp dword [0x5ec65c], 0
je 0x47f893
mov eax, dword [ebp - 0x1034]
mov dword [ebp - 0x31b8], eax
push 0x10
push 0
lea ecx, [ebp - 0x31a0]
push ecx
call fcn.005281f0
add esp, 0xc
mov edx, 2
mov word [ebp - 0x31a0], dx
mov eax, dword [ebp - 0x31b8]
mov dword [ebp - 0x319c], eax
xor ecx, ecx
mov word [ebp - 0x319e], cx
push 0x10
lea edx, [ebp - 0x31a0]
push edx
mov eax, dword [ebp - 0x14]
push eax
call dword [sym.imp.WS2_32.dll_bind]
test eax, eax
je 0x47f908
push str.bind_udp_socket_failed
push 1
call fcn.004d0e00
add esp, 8
mov dword [ebp - 0x1a588], 0xffffffff
push 0x5b15cc
lea ecx, [ebp - 0x1a588]
push ecx
call fcn.005286d1
mov dword [ebp - 0x318c], 0x10
mov byte [ebp - 0x203f], 0
mov byte [ebp - 0x203e], 0
mov byte [ebp - 0x203d], 1
push 4
lea edx, [ebp - 0x1034]
push edx
lea eax, [ebp - 0x203c]
push eax
call fcn.005289e0
add esp, 0xc
lea ecx, [ebp - 0x318c]
push ecx
lea edx, [ebp - 0x31a0]
push edx
mov eax, dword [ebp - 0x14]
push eax
call dword [sym.imp.WS2_32.dll_getsockname]
push 2
lea ecx, [ebp - 0x319e]
push ecx
lea edx, [ebp - 0x2038]
push edx
call fcn.005289e0
add esp, 0xc
push 0xa
lea eax, [ebp - 0x2040]
push eax
mov ecx, dword [ebp - 0x2044]
mov edx, dword [ecx]
push edx
mov ecx, dword [ebp - 0x1a67c]
call fcn.004c7f70
mov dword [ebp - 0x1a6d4], eax
cmp dword [ebp - 0x1a6d4], 0
jne 0x47f9c5
push str.send_to_client_tcp_failed
push 1
call fcn.004d0e00
add esp, 8
mov dword [ebp - 0x1a58c], 0xffffffff
push 0x5b15cc
lea eax, [ebp - 0x1a58c]
push eax
call fcn.005286d1
mov dword [ebp - 0x3188], 1
mov dword [ebp - 0x3184], 0
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x3190], eax
push 0x10
push 0
lea ecx, [ebp - 0x31b4]
push ecx
call fcn.005281f0
add esp, 0xc
mov edx, 2
mov word [ebp - 0x31b4], dx
mov byte [ebp - 0x41c8], 0
push 0x1000
push 0
lea eax, [ebp - 0x41c7]
push eax
call fcn.005281f0
add esp, 0xc
mov ecx, dword [ebp + 8]
cmp dword [ecx], 2
jne 0x48077c
mov dword [ebp - 0x3170], 0
mov dword [ebp - 0x41d8], 0
jmp 0x47fa52
mov edx, dword [ebp - 0x41d8]
add edx, 1
mov dword [ebp - 0x41d8], edx
mov eax, dword [ebp - 0x41d8]
cmp eax, dword [ebp - 0x3170]
jae 0x47fa76
mov ecx, dword [ebp - 0x41d8]
mov edx, dword [ebp + ecx*4 - 0x316c]
cmp edx, dword [ebp - 0x14]
jne 0x47fa74
jmp 0x47fa76
jmp 0x47fa43
mov eax, dword [ebp - 0x41d8]
cmp eax, dword [ebp - 0x3170]
jne 0x47faac
cmp dword [ebp - 0x3170], 0x40
jae 0x47faac
mov ecx, dword [ebp - 0x41d8]
mov edx, dword [ebp - 0x14]
mov dword [ebp + ecx*4 - 0x316c], edx
mov eax, dword [ebp - 0x3170]
add eax, 1
mov dword [ebp - 0x3170], eax
xor ecx, ecx
jne 0x47fa37
mov dword [ebp - 0x41dc], 0
jmp 0x47facb
mov edx, dword [ebp - 0x41dc]
add edx, 1
mov dword [ebp - 0x41dc], edx
mov eax, dword [ebp - 0x41dc]
cmp eax, dword [ebp - 0x3170]
jae 0x47faf4
mov ecx, dword [ebp - 0x41dc]
mov edx, dword [ebp - 0x2044]
mov eax, dword [ebp + ecx*4 - 0x316c]
cmp eax, dword [edx]
jne 0x47faf2
jmp 0x47faf4
jmp 0x47fabc
mov ecx, dword [ebp - 0x41dc]
cmp ecx, dword [ebp - 0x3170]
jne 0x47fb2f
cmp dword [ebp - 0x3170], 0x40
jae 0x47fb2f
mov edx, dword [ebp - 0x41dc]
mov eax, dword [ebp - 0x2044]
mov ecx, dword [eax]
mov dword [ebp + edx*4 - 0x316c], ecx
mov edx, dword [ebp - 0x3170]
add edx, 1
mov dword [ebp - 0x3170], edx
xor eax, eax
jne 0x47fab0
lea ecx, [ebp - 0x3188]
push ecx
push 0
push 0
lea edx, [ebp - 0x3170]
push edx
push 0x40
call dword [sym.imp.WS2_32.dll_select]
mov dword [ebp - 0x41d4], eax
cmp dword [ebp - 0x41d4], 0
jne 0x47fbaa
cmp dword [0x5fa5b4], 0
jg 0x47fb6e
jmp 0x47fa21
mov esi, dword [0x5fa5b4]
imul esi, esi, 0x3e8
call dword [sym.imp.KERNEL32.dll_GetTickCount]
sub eax, dword [ebp - 0x3190]
cmp eax, esi
jle 0x47fba5
mov dword [ebp - 0x1a590], 0xffffffff
push 0x5b15cc
lea eax, [ebp - 0x1a590]
push eax
call fcn.005286d1
jmp 0x47fa21
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x3190], eax
cmp dword [ebp - 0x41d4], 0
jge 0x47fbd3
push str.udp_select_error
push 1
call fcn.004d0e00
add esp, 8
jmp 0x48077c
lea ecx, [ebp - 0x3170]
push ecx
mov edx, dword [ebp - 0x14]
push edx
call sub.WS2_32.dll___WSAFDIsSet
test eax, eax
je 0x480703
mov dword [ebp - 0x14200], 0x10000
mov byte [ebp - 0x141f8], 0
push 0x10000
push 0
lea eax, [ebp - 0x141f7]
push eax
call fcn.005281f0
add esp, 0xc
push 0x10
push 0
lea ecx, [ebp - 0x41f0]
push ecx
call fcn.005281f0
add esp, 0xc
mov dword [ebp - 0x41e0], 0x10
lea edx, [ebp - 0x41e0]
push edx
lea eax, [ebp - 0x41f0]
push eax
push 0
push 0xfff6
lea ecx, [ebp - 0x141ee]
push ecx
mov edx, dword [ebp - 0x14]
push edx
call dword [sym.imp.WS2_32.dll_recvfrom]
mov dword [ebp - 0x14204], eax
call dword [sym.imp.WS2_32.dll_WSAGetLastError]
mov dword [ebp - 0x141fc], eax
cmp dword [ebp - 0x141fc], 0
je 0x47fce3
mov eax, dword [ebp - 0x41ec]
push eax
call dword [sym.imp.WS2_32.dll_inet_ntoa]
push eax
lea ecx, [ebp - 0x1a594]
push ecx
call fcn.00499f80
add esp, 8
mov dword [ebp - 0x1a6d8], eax
mov edx, dword [ebp - 0x1a6d8]
mov dword [ebp - 0x1a6dc], edx
mov byte [ebp - 4], 3
movzx eax, word [ebp - 0x41ee]
push eax
call dword [sym.imp.WS2_32.dll_ntohs]
movzx ecx, ax
push ecx
mov edx, dword [ebp - 0x1a6dc]
mov eax, dword [edx]
push eax
mov ecx, dword [ebp - 0x141fc]
push ecx
push str.udp_recvfrom_error__d__s:_d
push 1
call fcn.004d0e00
add esp, 0x14
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x1a594]
call fcn.00415e20
cmp dword [ebp - 0x14204], 0
jne 0x47fd77
mov edx, dword [ebp - 0x41ec]
push edx
call dword [sym.imp.WS2_32.dll_inet_ntoa]
push eax
lea eax, [ebp - 0x1a598]
push eax
call fcn.00499f80
add esp, 8
mov dword [ebp - 0x1a6e0], eax
mov ecx, dword [ebp - 0x1a6e0]
mov dword [ebp - 0x1a6e4], ecx
mov byte [ebp - 4], 4
movzx edx, word [ebp - 0x41ee]
push edx
call dword [sym.imp.WS2_32.dll_ntohs]
movzx eax, ax
push eax
mov ecx, dword [ebp - 0x1a6e4]
mov edx, dword [ecx]
push edx
push str.udp_recvfrom_zero_len__s:_d
push 1
call fcn.004d0e00
add esp, 0x10
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x1a598]
call fcn.00415e20
mov dword [ebp - 0x1a59c], 0xffffffff
push 0x5b15cc
lea eax, [ebp - 0x1a59c]
push eax
call fcn.005286d1
cmp dword [ebp - 0x14204], 0
jle 0x4806ed
mov ecx, dword [ebp - 0x41ec]
cmp ecx, dword [ebp - 0x317c]
jne 0x47fdab
movzx edx, word [ebp - 0x317e]
test edx, edx
jne 0x47fdab
mov ax, word [ebp - 0x41ee]
mov word [ebp - 0x317e], ax
mov ecx, dword [ebp - 0x41ec]
cmp ecx, dword [ebp - 0x317c]
jne 0x4805cc
movzx edx, word [ebp - 0x317e]
movzx eax, word [ebp - 0x41ee]
cmp eax, edx
jne 0x4805cc
movsx ecx, byte [ebp - 0x141ee]
test ecx, ecx
jne 0x47fde9
movsx edx, byte [ebp - 0x141ed]
test edx, edx
je 0x47fdfd
push str.udp_from_client_header_2_byte_not_zero
push 1
call fcn.004d0e00
add esp, 8
jmp 0x47fa21
movsx eax, byte [ebp - 0x141ec]
test eax, eax
je 0x47fe1f
movsx ecx, byte [ebp - 0x141ec]
push ecx
push str.seq_number__d
push 1
call fcn.004d0e00
add esp, 0xc
cmp dword [ebp - 0x14204], 0xa
jge 0x47fe43
mov edx, dword [ebp - 0x14204]
push edx
push str.udp_from_client_len__d___10__skip
push 1
call fcn.004d0e00
add esp, 0xc
jmp 0x47fa21
cmp dword [ebp - 0x14204], 0xa
jne 0x47fe5b
push str.udp_from_client_len_10
push 1
call fcn.004d0e00
add esp, 8
mov dword [ebp - 0x1420c], 0
mov dword [ebp - 0x14208], 0
movsx eax, byte [ebp - 0x141eb]
cmp eax, 1
jne 0x48015b
push 4
lea ecx, [ebp - 0x141ea]
push ecx
lea edx, [ebp - 0x31b0]
push edx
call fcn.005289e0
add esp, 0xc
push 2
lea eax, [ebp - 0x141e6]
push eax
lea ecx, [ebp - 0x31b2]
push ecx
call fcn.005289e0
add esp, 0xc
lea edx, [ebp - 0x141e4]
mov dword [ebp - 0x1420c], edx
mov eax, dword [ebp - 0x14204]
sub eax, 0xa
mov dword [ebp - 0x14208], eax
mov byte [ebp - 0x15618], 0
push 0x1000
push 0
lea ecx, [ebp - 0x15617]
push ecx
call fcn.005281f0
add esp, 0xc
mov edx, dword [ebp - 0x31b0]
push edx
call dword [sym.imp.WS2_32.dll_inet_ntoa]
mov dword [ebp - 0x1561c], eax
push 0x400
push 0
lea eax, [ebp - 0x14610]
push eax
call fcn.005281f0
add esp, 0xc
cmp dword [ebp - 0x1561c], 0
je 0x47ff82
mov ecx, dword [ebp - 0x1561c]
push ecx
lea edx, [ebp - 0x14610]
push edx
call fcn.0052a310
add esp, 8
mov eax, dword [ebp - 0x1034]
push eax
call dword [sym.imp.WS2_32.dll_inet_ntoa]
push eax
lea ecx, [ebp - 0x15720]
push ecx
call fcn.0052a310
add esp, 8
lea edx, [ebp - 0x15720]
push edx
movzx eax, word [ebp - 0x31b2]
push eax
call dword [sym.imp.WS2_32.dll_ntohs]
movzx ecx, ax
push ecx
lea edx, [ebp - 0x14610]
push edx
push 0x582f2c
lea eax, [ebp - 0x15618]
push eax
call fcn.0052a9d1
add esp, 0x14
jmp 0x47ff96
push str.invalid_udp_remote_ip_addr__skip
push 1
call fcn.004d0e00
add esp, 8
jmp 0x47fa21
push 0x582f8c
lea ecx, [ebp - 0x1a5a4]
call fcn.00415da0
mov dword [ebp - 0x1a6e8], eax
mov ecx, dword [ebp - 0x1a6e8]
mov dword [ebp - 0x1a6ec], ecx
mov byte [ebp - 4], 5
mov edx, dword [ebp - 0x1a6ec]
push edx
push ecx
mov ecx, esp
mov dword [ebp - 0x1a5a8], esp
push 0x582f90
call fcn.00415da0
mov dword [ebp - 0x1a6f0], eax
mov eax, dword [ebp - 0x1a6f0]
mov dword [ebp - 0x1a6f4], eax
mov byte [ebp - 4], 6
movzx ecx, word [ebp - 0x31b2]
push ecx
call dword [sym.imp.WS2_32.dll_ntohs]
movzx edx, ax
push edx
push ecx
mov eax, esp
mov dword [ebp - 0x1a5ac], esp
lea ecx, [ebp - 0x14610]
push ecx
push eax
call fcn.00499f80
add esp, 8
mov dword [ebp - 0x1a6f8], eax
mov edx, dword [ebp + 8]
push edx
mov byte [ebp - 4], 5
mov ecx, 0x5c8578
call fcn.00452ff0
mov dword [ebp - 0x1a6fc], eax
mov eax, dword [ebp - 0x1a6fc]
mov dword [ebp - 0x1a5a0], eax
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x1a5a4]
call fcn.00415e20
cmp dword [ebp - 0x1a5a0], 0
je 0x48006d
push str.web_filter_udp_remote_ip
push 1
call fcn.004d0e00
add esp, 8
jmp 0x47fa21
lea ecx, [ebp - 0x41c8]
push ecx
lea edx, [ebp - 0x15618]
push edx
call fcn.0052b680
add esp, 8
test eax, eax
je 0x480156
lea eax, [ebp - 0x15618]
push eax
lea ecx, [ebp - 0x41c8]
push ecx
call fcn.0052a310
add esp, 8
push ecx
mov ecx, esp
mov dword [ebp - 0x1a5b0], esp
push 0x582fc8
call fcn.00415da0
mov dword [ebp - 0x1a700], eax
mov edx, dword [ebp - 0x1a700]
mov dword [ebp - 0x1a704], edx
mov byte [ebp - 4], 7
push ecx
mov ecx, esp
mov dword [ebp - 0x1a5b4], esp
push 0x582fcc
call fcn.00415da0
mov dword [ebp - 0x1a708], eax
mov eax, dword [ebp - 0x1a708]
mov dword [ebp - 0x1a70c], eax
mov byte [ebp - 4], 8
push ecx
mov ecx, esp
mov dword [ebp - 0x1a5b8], esp
push 0x582fd0
call fcn.00415da0
mov dword [ebp - 0x1a710], eax
mov ecx, dword [ebp - 0x1a710]
mov dword [ebp - 0x1a714], ecx
mov byte [ebp - 4], 9
push 0
push 0
push 0xc8
push ecx
mov edx, esp
mov dword [ebp - 0x1a5bc], esp
lea eax, [ebp - 0x15618]
push eax
push edx
call fcn.00499f80
add esp, 8
mov dword [ebp - 0x1a718], eax
mov ecx, dword [ebp + 8]
push ecx
mov byte [ebp - 4], 2
mov ecx, 0x5c8578
call fcn.004514c0
jmp 0x480522
movsx edx, byte [ebp - 0x141eb]
cmp edx, 3
jne 0x4804b1
movsx eax, byte [ebp - 0x141ea]
add eax, 7
cmp dword [ebp - 0x14204], eax
jle 0x48049b
movsx ecx, byte [ebp - 0x141ea]
cmp ecx, 0x100
jle 0x4801a4
push str.udp_cmd_len_error
push 1
call fcn.004d0e00
add esp, 8
jmp 0x47fa21
movsx edx, byte [ebp - 0x141ea]
push edx
lea eax, [ebp - 0x141e9]
push eax
lea ecx, [ebp - 0x15b20]
push ecx
call fcn.005289e0
add esp, 0xc
movsx edx, byte [ebp - 0x141ea]
mov byte [ebp + edx - 0x15b20], 0
lea eax, [ebp - 0x15b20]
push eax
call dword [sym.imp.WS2_32.dll_gethostbyname]
mov dword [ebp - 0x15b24], eax
cmp dword [ebp - 0x15b24], 0
je 0x48047e
push 4
mov ecx, dword [ebp - 0x15b24]
mov edx, dword [ecx + 0xc]
mov eax, dword [edx]
push eax
lea ecx, [ebp - 0x31b0]
push ecx
call fcn.005289e0
add esp, 0xc
push 2
movsx edx, byte [ebp - 0x141ea]
lea eax, [ebp + edx - 0x141e9]
push eax
lea ecx, [ebp - 0x31b2]
push ecx
call fcn.005289e0
add esp, 0xc
movsx edx, byte [ebp - 0x141ea]
lea eax, [ebp + edx - 0x141e7]
mov dword [ebp - 0x1420c], eax
movsx ecx, byte [ebp - 0x141ea]
mov edx, dword [ebp - 0x14204]
sub edx, 5
sub edx, ecx
sub edx, 2
mov dword [ebp - 0x14208], edx
mov byte [ebp - 0x16b30], 0
push 0x1000
push 0
lea eax, [ebp - 0x16b2f]
push eax
call fcn.005281f0
add esp, 0xc
mov ecx, dword [ebp - 0x1034]
push ecx
call dword [sym.imp.WS2_32.dll_inet_ntoa]
push eax
movzx edx, word [ebp - 0x31b2]
push edx
call dword [sym.imp.WS2_32.dll_ntohs]
movzx eax, ax
push eax
lea ecx, [ebp - 0x15b20]
push ecx
push str.UDP__s:_d_outgoing_via__s
lea edx, [ebp - 0x16b30]
push edx
call fcn.0052a9d1
add esp, 0x14
push 0x583020
lea ecx, [ebp - 0x1a5c4]
call fcn.00415da0
mov dword [ebp - 0x1a71c], eax
mov eax, dword [ebp - 0x1a71c]
mov dword [ebp - 0x1a720], eax
mov byte [ebp - 4], 0xa
mov ecx, dword [ebp - 0x1a720]
push ecx
push ecx
mov ecx, esp
mov dword [ebp - 0x1a5c8], esp
push 0x583024
call fcn.00415da0
mov dword [ebp - 0x1a724], eax
mov edx, dword [ebp - 0x1a724]
mov dword [ebp - 0x1a728], edx
mov byte [ebp - 4], 0xb
movzx eax, word [ebp - 0x31b2]
push eax
call dword [sym.imp.WS2_32.dll_ntohs]
movzx ecx, ax
push ecx
push ecx
mov edx, esp
mov dword [ebp - 0x1a5cc], esp
lea eax, [ebp - 0x15b20]
push eax
push edx
call fcn.00499f80
add esp, 8
mov dword [ebp - 0x1a72c], eax
mov ecx, dword [ebp + 8]
push ecx
mov byte [ebp - 4], 0xa
mov ecx, 0x5c8578
call fcn.00452ff0
mov dword [ebp - 0x1a730], eax
mov edx, dword [ebp - 0x1a730]
mov dword [ebp - 0x1a5c0], edx
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x1a5c4]
call fcn.00415e20
cmp dword [ebp - 0x1a5c0], 0
je 0x480393
lea eax, [ebp - 0x15b20]
push eax
push str.web_filter_udp_remote_host__s__skip
push 1
call fcn.004d0e00
add esp, 0xc
jmp 0x47fa21
lea ecx, [ebp - 0x41c8]
push ecx
lea edx, [ebp - 0x16b30]
push edx
call fcn.0052b680
add esp, 8
test eax, eax
je 0x48047c
lea eax, [ebp - 0x16b30]
push eax
lea ecx, [ebp - 0x41c8]
push ecx
call fcn.0052a310
add esp, 8
push ecx
mov ecx, esp
mov dword [ebp - 0x1a5d0], esp
push 0x583070
call fcn.00415da0
mov dword [ebp - 0x1a734], eax
mov edx, dword [ebp - 0x1a734]
mov dword [ebp - 0x1a738], edx
mov byte [ebp - 4], 0xc
push ecx
mov ecx, esp
mov dword [ebp - 0x1a5d4], esp
push 0x583074
call fcn.00415da0
mov dword [ebp - 0x1a73c], eax
mov eax, dword [ebp - 0x1a73c]
mov dword [ebp - 0x1a740], eax
mov byte [ebp - 4], 0xd
push ecx
mov ecx, esp
mov dword [ebp - 0x1a5d8], esp
push 0x583078
call fcn.00415da0
mov dword [ebp - 0x1a744], eax
mov ecx, dword [ebp - 0x1a744]
mov dword [ebp - 0x1a748], ecx
mov byte [ebp - 4], 0xe
push 0
push 0
push 0xc8
push ecx
mov edx, esp
mov dword [ebp - 0x1a5dc], esp
lea eax, [ebp - 0x16b30]
push eax
push edx
call fcn.00499f80
add esp, 8
mov dword [ebp - 0x1a74c], eax
mov ecx, dword [ebp + 8]
push ecx
mov byte [ebp - 4], 2
mov ecx, 0x5c8578
call fcn.004514c0
jmp 0x480499
lea edx, [ebp - 0x15b20]
push edx
push str.invalid_udp_remote_host__s__skip
push 1
call fcn.004d0e00
add esp, 0xc
jmp 0x47fa21
jmp 0x4804af
push str.host_name_len_error
push 1
call fcn.004d0e00
add esp, 8
jmp 0x47fa21
jmp 0x480522
mov eax, dword [ebp - 0x41ec]
push eax
call dword [sym.imp.WS2_32.dll_inet_ntoa]
push eax
lea ecx, [ebp - 0x1a5e0]
push ecx
call fcn.00499f80
add esp, 8
mov dword [ebp - 0x1a750], eax
mov edx, dword [ebp - 0x1a750]
mov dword [ebp - 0x1a754], edx
mov byte [ebp - 4], 0xf
movzx eax, word [ebp - 0x41ee]
push eax
call dword [sym.imp.WS2_32.dll_ntohs]
movzx ecx, ax
push ecx
mov edx, dword [ebp - 0x1a754]
mov eax, dword [edx]
push eax
push str.socks5_cmd_error__s:_d
push 1
call fcn.004d0e00
add esp, 0x10
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x1a5e0]
call fcn.00415e20
jmp 0x47fa21
mov ecx, dword [ebp - 0x31b0]
cmp ecx, dword [ebp - 0x317c]
jne 0x480551
movzx edx, word [ebp - 0x317e]
movzx eax, word [ebp - 0x31b2]
cmp eax, edx
jne 0x480551
push str.remote_udp_addr__client_udp_addr
push 1
call fcn.004d0e00
add esp, 8
cmp dword [ebp - 0x31b0], 0
jne 0x480569
push str.remote_udp_addr__0
push 1
call fcn.004d0e00
add esp, 8
push 0
mov ecx, dword [ebp - 0x14208]
push ecx
mov edx, dword [ebp + 8]
push edx
call fcn.0044d350
add esp, 0xc
mov eax, dword [ebp - 0x14208]
push eax
mov ecx, dword [ebp - 0x1420c]
push ecx
lea edx, [ebp - 0x31b4]
push edx
mov eax, dword [ebp - 0x14]
push eax
mov ecx, dword [ebp - 0x1a67c]
call fcn.004c7ea0
mov dword [ebp - 0x1a758], eax
cmp dword [ebp - 0x1a758], 0
jne 0x4805c7
call dword [sym.imp.WS2_32.dll_WSAGetLastError]
push eax
push str.udp_sent_to_remote_error__d
push 1
call fcn.004d0e00
add esp, 0xc
jmp 0x47fa21
mov byte [ebp - 0x141f8], 0
mov byte [ebp - 0x141f7], 0
mov byte [ebp - 0x141f6], 0
mov byte [ebp - 0x141f5], 1
push 4
lea ecx, [ebp - 0x41ec]
push ecx
lea edx, [ebp - 0x141f4]
push edx
call fcn.005289e0
add esp, 0xc
push 2
lea eax, [ebp - 0x41ee]
push eax
lea ecx, [ebp - 0x141f0]
push ecx
call fcn.005289e0
add esp, 0xc
push 1
mov edx, dword [ebp - 0x14204]
add edx, 0xa
push edx
mov eax, dword [ebp + 8]
push eax
call fcn.0044d350
add esp, 0xc
mov ecx, dword [ebp - 0x14204]
add ecx, 0xa
push ecx
lea edx, [ebp - 0x141f8]
push edx
lea eax, [ebp - 0x3180]
push eax
mov ecx, dword [ebp - 0x14]
push ecx
mov ecx, dword [ebp - 0x1a67c]
call fcn.004c7ea0
mov dword [ebp - 0x1a75c], eax
cmp dword [ebp - 0x1a75c], 0
jne 0x48067c
call dword [sym.imp.WS2_32.dll_WSAGetLastError]
push eax
push str.udp_sent_to_client_error__d
push 1
call fcn.004d0e00
add esp, 0xc
jmp 0x47fa21
mov eax, dword [ebp - 0x14204]
push eax
push str.udp_recvfrom_return__d
push 1
call fcn.004d0e00
add esp, 0xc
lea ecx, [ebp - 0x3170]
push ecx
mov edx, dword [ebp - 0x2044]
mov eax, dword [edx]
push eax
call sub.WS2_32.dll___WSAFDIsSet
test eax, eax
je 0x480777
mov dword [ebp - 0x16b34], 0x1000
push 0
lea ecx, [ebp - 0x16b34]
push ecx
lea edx, [ebp - 0x2040]
push edx
mov eax, dword [ebp - 0x2044]
mov ecx, dword [eax]
push ecx
mov ecx, dword [ebp - 0x1a67c]
call fcn.004c7cd0
mov dword [ebp - 0x1a768], eax
cmp dword [ebp - 0x1a768], 0
jne 0x48075b
jmp 0x48077c
cmp dword [ebp - 0x16b34], 0
jne 0x480766
jmp 0x48077c
push str.tcp_read_more_udp_cmd
push 1
call fcn.004d0e00
add esp, 8
jmp 0x48077c
jmp 0x47fa21
mov dword [ebp - 0x1a5e8], 0xffffffff
push 0x5b15cc
lea edx, [ebp - 0x1a5e8]
push edx
call fcn.005286d1
movsx eax, byte [ebp - 0x2040]
cmp eax, 5
jne 0x480dfa
movsx ecx, byte [ebp - 0x203f]
cmp ecx, 1
jne 0x480dfa
push 0
push 1
push 2
call dword [sym.imp.WS2_32.dll_socket]
mov dword [ebp - 0x14], eax
call dword [sym.imp.WS2_32.dll_WSAGetLastError]
test eax, eax
je 0x48080f
mov byte [ebp - 0x203f], 1
push 0xa
lea edx, [ebp - 0x2040]
push edx
mov eax, dword [ebp - 0x2044]
mov ecx, dword [eax]
push ecx
mov ecx, dword [ebp - 0x1a67c]
call fcn.004c7f70
mov dword [ebp - 0x1a5ec], 0xffffffff
push 0x5b15cc
lea edx, [ebp - 0x1a5ec]
push edx
call fcn.005286d1
mov eax, 2
mov word [ebp - 0x16f4c], ax
mov byte [ebp - 0x16f38], 0
push 0x3ff
push 0
lea ecx, [ebp - 0x16f37]
push ecx
call fcn.005281f0
add esp, 0xc
movsx edx, byte [ebp - 0x203d]
cmp edx, 1
jne 0x4808a7
push 4
lea eax, [ebp - 0x203c]
push eax
lea ecx, [ebp - 0x16f48]
push ecx
call fcn.005289e0
add esp, 0xc
push 2
lea edx, [ebp - 0x2038]
push edx
lea eax, [ebp - 0x16f4a]
push eax
call fcn.005289e0
add esp, 0xc
mov ecx, dword [ebp - 0x16f48]
push ecx
call dword [sym.imp.WS2_32.dll_inet_ntoa]
test eax, eax
je 0x4808a2
mov edx, dword [ebp - 0x16f48]
push edx
call dword [sym.imp.WS2_32.dll_inet_ntoa]
push eax
lea eax, [ebp - 0x16f38]
push eax
call fcn.0052a310
add esp, 8
jmp 0x4809ba
movsx ecx, byte [ebp - 0x203d]
cmp ecx, 3
jne 0x4809ba
movsx edx, byte [ebp - 0x203c]
mov dword [ebp - 0x17f98], edx
cmp dword [ebp - 0x17f98], 0x100
jle 0x4808eb
mov dword [ebp - 0x1a5f0], 0xffffffff
push 0x5b15cc
lea eax, [ebp - 0x1a5f0]
push eax
call fcn.005286d1
mov ecx, dword [ebp - 0x17f98]
sub ecx, 3
mov dword [ebp - 0x17f9c], ecx
je 0x48094c
push 8
lea edx, [ebp - 0x17f9c]
push edx
lea eax, [ebp - 0x2036]
push eax
mov ecx, dword [ebp - 0x2044]
mov edx, dword [ecx]
push edx
mov ecx, dword [ebp - 0x1a67c]
call fcn.004c7cd0
mov dword [ebp - 0x1a76c], eax
cmp dword [ebp - 0x1a76c], 0
jne 0x48094a
mov dword [ebp - 0x1a5f4], 0xffffffff
push 0x5b15cc
lea eax, [ebp - 0x1a5f4]
push eax
call fcn.005286d1
jmp 0x480970
cmp dword [ebp - 0x17f9c], 0
jae 0x480970
mov dword [ebp - 0x1a5f8], 0xffffffff
push 0x5b15cc
lea ecx, [ebp - 0x1a5f8]
push ecx
call fcn.005286d1
mov edx, dword [ebp - 0x17f98]
push edx
lea eax, [ebp - 0x203b]
push eax
lea ecx, [ebp - 0x16f38]
push ecx
call fcn.005289e0
add esp, 0xc
mov edx, dword [ebp - 0x17f98]
mov byte [ebp + edx - 0x16f38], 0
push 2
mov eax, dword [ebp - 0x17f98]
lea ecx, [ebp + eax - 0x203b]
push ecx
lea edx, [ebp - 0x16f4a]
push edx
call fcn.005289e0
add esp, 0xc
push 0x5832a0
lea ecx, [ebp - 0x1a600]
call fcn.00415da0
mov dword [ebp - 0x1a770], eax
mov eax, dword [ebp - 0x1a770]
mov dword [ebp - 0x1a774], eax
mov byte [ebp - 4], 0x11
mov ecx, dword [ebp - 0x1a774]
push ecx
push ecx
mov ecx, esp
mov dword [ebp - 0x1a604], esp
push 0x5832a4
call fcn.00415da0
mov dword [ebp - 0x1a778], eax
mov edx, dword [ebp - 0x1a778]
mov dword [ebp - 0x1a77c], edx
mov byte [ebp - 4], 0x12
movzx eax, word [ebp - 0x16f4a]
push eax
call dword [sym.imp.WS2_32.dll_ntohs]
movzx ecx, ax
push ecx
push ecx
mov edx, esp
mov dword [ebp - 0x1a608], esp
lea eax, [ebp - 0x16f38]
push eax
push edx
call fcn.00499f80
add esp, 8
mov dword [ebp - 0x1a780], eax
mov ecx, dword [ebp + 8]
push ecx
mov byte [ebp - 4], 0x11
mov ecx, 0x5c8578
call fcn.00452ff0
mov dword [ebp - 0x1a784], eax
mov edx, dword [ebp - 0x1a784]
mov dword [ebp - 0x1a5fc], edx
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x1a600]
call fcn.00415e20
cmp dword [ebp - 0x1a5fc], 0
je 0x480a98
mov dword [ebp - 0x1a60c], 0xffffffff
push 0x5b15cc
lea eax, [ebp - 0x1a60c]
push eax
call fcn.005286d1
mov byte [ebp - 0x17f58], 0
push 0x1000
push 0
lea ecx, [ebp - 0x17f57]
push ecx
call fcn.005281f0
add esp, 0xc
lea edx, [ebp - 0x16f38]
push edx
call fcn.00529140
add esp, 4
test eax, eax
jne 0x480b15
mov eax, dword [ebp - 0x203c]
push eax
call dword [sym.imp.WS2_32.dll_inet_ntoa]
mov dword [ebp - 0x17fa0], eax
cmp dword [ebp - 0x17fa0], 0
jne 0x480aff
mov dword [ebp - 0x1a610], 0xffffffff
push 0x5b15cc
lea ecx, [ebp - 0x1a610]
push ecx
call fcn.005286d1
mov edx, dword [ebp - 0x17fa0]
push edx
lea eax, [ebp - 0x16f38]
push eax
call fcn.0052a310
add esp, 8
mov ecx, dword [ebp - 0x1034]
push ecx
call dword [sym.imp.WS2_32.dll_inet_ntoa]
push eax
movzx edx, word [ebp - 0x16f4a]
push edx
call dword [sym.imp.WS2_32.dll_ntohs]
movzx eax, ax
push eax
lea ecx, [ebp - 0x16f38]
push ecx
push str.CONNECT__s:_d_outgoing_via__s
lea edx, [ebp - 0x17f58]
push edx
call fcn.0052a9d1
add esp, 0x14
push ecx
mov ecx, esp
mov dword [ebp - 0x1a614], esp
push 0x5832c8
call fcn.00415da0
mov dword [ebp - 0x1a788], eax
mov eax, dword [ebp - 0x1a788]
mov dword [ebp - 0x1a78c], eax
mov byte [ebp - 4], 0x13
push ecx
mov ecx, esp
mov dword [ebp - 0x1a618], esp
push 0x5832cc
call fcn.00415da0
mov dword [ebp - 0x1a790], eax
mov ecx, dword [ebp - 0x1a790]
mov dword [ebp - 0x1a794], ecx
mov byte [ebp - 4], 0x14
push ecx
mov ecx, esp
mov dword [ebp - 0x1a61c], esp
push 0x5832d0
call fcn.00415da0
mov dword [ebp - 0x1a798], eax
mov edx, dword [ebp - 0x1a798]
mov dword [ebp - 0x1a79c], edx
mov byte [ebp - 4], 0x15
push 0
push 0
push 0xc8
push ecx
mov eax, esp
mov dword [ebp - 0x1a620], esp
lea ecx, [ebp - 0x17f58]
push ecx
push eax
call fcn.00499f80
add esp, 8
mov dword [ebp - 0x1a7a0], eax
mov edx, dword [ebp + 8]
push edx
mov byte [ebp - 4], 2
mov ecx, 0x5c8578
call fcn.004514c0
lea ecx, [ebp - 0x17f84]
call fcn.00460d70
mov dword [ebp - 0x1a7a4], eax
mov byte [ebp - 4], 0x16
lea eax, [ebp - 0x17f84]
push eax
push 1
mov ecx, 0x5ca8a8
call fcn.0048bcd0
mov dword [ebp - 0x17f5c], 0
cmp dword [0x5ec65c], 0
je 0x480c4c
mov ecx, dword [ebp - 0x1034]
mov dword [ebp - 0x17f5c], ecx
lea edx, [ebp - 0x16f38]
push edx
lea eax, [ebp - 0x1a628]
push eax
call fcn.00499f80
add esp, 8
mov dword [ebp - 0x1a7a8], eax
mov ecx, dword [ebp - 0x1a7a8]
mov dword [ebp - 0x1a7ac], ecx
mov byte [ebp - 4], 0x17
mov edx, dword [ebp - 0x17f5c]
push edx
lea eax, [ebp - 0x17f84]
push eax
movzx ecx, word [ebp - 0x16f4a]
push ecx
call dword [sym.imp.WS2_32.dll_ntohs]
movzx edx, ax
push edx
mov ecx, dword [ebp - 0x1a7ac]
call fcn.00415f60
push eax
mov eax, dword [ebp - 0x14]
push eax
mov ecx, dword [ebp - 0x1a67c]
call fcn.004c8720
mov dword [ebp - 0x1a7b0], eax
xor ecx, ecx
cmp dword [ebp - 0x1a7b0], 0
sete cl
mov byte [ebp - 0x1a621], cl
mov byte [ebp - 4], 0x16
lea ecx, [ebp - 0x1a628]
call fcn.00415e20
movzx edx, byte [ebp - 0x1a621]
test edx, edx
je 0x480d24
mov byte [ebp - 0x203f], 1
push 0xa
lea eax, [ebp - 0x2040]
push eax
mov ecx, dword [ebp - 0x2044]
mov edx, dword [ecx]
push edx
mov ecx, dword [ebp - 0x1a67c]
call fcn.004c7f70
mov dword [ebp - 0x1a62c], 0xffffffff
push 0x5b15cc
lea eax, [ebp - 0x1a62c]
push eax
call fcn.005286d1
mov ecx, 2
mov word [ebp - 0x17f94], cx
mov dword [ebp - 0x16f3c], 0x10
lea edx, [ebp - 0x16f3c]
push edx
lea eax, [ebp - 0x17f94]
push eax
mov ecx, dword [ebp - 0x14]
push ecx
call dword [sym.imp.WS2_32.dll_getsockname]
mov byte [ebp - 0x203f], 0
mov byte [ebp - 0x203e], 0
mov byte [ebp - 0x203d], 1
push 4
lea edx, [ebp - 0x17f90]
push edx
lea eax, [ebp - 0x203c]
push eax
call fcn.005289e0
add esp, 0xc
push 2
lea ecx, [ebp - 0x17f92]
push ecx
lea edx, [ebp - 0x2038]
push edx
call fcn.005289e0
add esp, 0xc
push 0xa
lea eax, [ebp - 0x2040]
push eax
mov ecx, dword [ebp - 0x2044]
mov edx, dword [ecx]
push edx
mov ecx, dword [ebp - 0x1a67c]
call fcn.004c7f70
mov eax, dword [ebp - 0x2044]
mov ecx, dword [eax]
push ecx
mov edx, dword [ebp - 0x14]
push edx
mov eax, dword [ebp + 8]
push eax
mov ecx, dword [ebp - 0x1a67c]
call fcn.004c81e0
mov dword [ebp - 0x1a630], 0xffffffff
push 0x5b15cc
lea ecx, [ebp - 0x1a630]
push ecx
call fcn.005286d1
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x17f84]
call fcn.00460d20
movsx edx, byte [ebp - 0x2040]
cmp edx, 5
jne 0x4816b7
movsx eax, byte [ebp - 0x203f]
cmp eax, 2
jne 0x4816b7
movsx ecx, byte [ebp - 0x203d]
cmp ecx, 1
jne 0x480e5b
push 4
lea edx, [ebp - 0x203c]
push edx
lea eax, [ebp - 0x180c4]
push eax
call fcn.005289e0
add esp, 0xc
push 2
lea ecx, [ebp - 0x2038]
push ecx
lea edx, [ebp - 0x180c6]
push edx
call fcn.005289e0
add esp, 0xc
jmp 0x480fe8
movsx eax, byte [ebp - 0x203d]
cmp eax, 3
jne 0x480fe8
movsx ecx, byte [ebp - 0x203c]
mov dword [ebp - 0x184e8], ecx
cmp dword [ebp - 0x184e8], 0x100
jle 0x480e9f
mov dword [ebp - 0x1a634], 0xffffffff
push 0x5b15cc
lea edx, [ebp - 0x1a634]
push edx
call fcn.005286d1
mov eax, dword [ebp - 0x184e8]
sub eax, 3
mov dword [ebp - 0x184ec], eax
je 0x480f00
push 8
lea ecx, [ebp - 0x184ec]
push ecx
lea edx, [ebp - 0x2036]
push edx
mov eax, dword [ebp - 0x2044]
mov ecx, dword [eax]
push ecx
mov ecx, dword [ebp - 0x1a67c]
call fcn.004c7cd0
mov dword [ebp - 0x1a7b4], eax
cmp dword [ebp - 0x1a7b4], 0
jne 0x480efe
mov dword [ebp - 0x1a638], 0xffffffff
push 0x5b15cc
lea edx, [ebp - 0x1a638]
push edx
call fcn.005286d1
jmp 0x480f24
cmp dword [ebp - 0x184ec], 0
jae 0x480f24
mov dword [ebp - 0x1a63c], 0xffffffff
push 0x5b15cc
lea eax, [ebp - 0x1a63c]
push eax
call fcn.005286d1
mov ecx, dword [ebp - 0x184e8]
push ecx
lea edx, [ebp - 0x203b]
push edx
lea eax, [ebp - 0x184e0]
push eax
call fcn.005289e0
add esp, 0xc
mov ecx, dword [ebp - 0x184e8]
mov byte [ebp + ecx - 0x184e0], 0
push 2
mov edx, dword [ebp - 0x184e8]
lea eax, [ebp + edx - 0x203b]
push eax
lea ecx, [ebp - 0x180c6]
push ecx
call fcn.005289e0
add esp, 0xc
lea edx, [ebp - 0x184e0]
push edx
call dword [sym.imp.WS2_32.dll_gethostbyname]
mov dword [ebp - 0x184e4], eax
cmp dword [ebp - 0x184e4], 0
je 0x480fa9
push 4
mov eax, dword [ebp - 0x184e4]
mov ecx, dword [eax + 0xc]
mov edx, dword [ecx]
push edx
lea eax, [ebp - 0x180c4]
push eax
call fcn.005289e0
add esp, 0xc
jmp 0x480fe8
mov byte [ebp - 0x203f], 1
push 0xa
lea ecx, [ebp - 0x2040]
push ecx
mov edx, dword [ebp - 0x2044]
mov eax, dword [edx]
push eax
mov ecx, dword [ebp - 0x1a67c]
call fcn.004c7f70
mov dword [ebp - 0x1a640], 0xffffffff
push 0x5b15cc
lea ecx, [ebp - 0x1a640]
push ecx
call fcn.005286d1
mov byte [ebp - 0x1a500], 0
push 0x1000
push 0
lea edx, [ebp - 0x1a4ff]
push edx
call fcn.005281f0
add esp, 0xc
mov byte [ebp - 0x194f8], 0
push 0x1000
push 0
lea eax, [ebp - 0x194f7]
push eax
call fcn.005281f0
add esp, 0xc
mov ecx, dword [ebp - 0x180c4]
push ecx
call dword [sym.imp.WS2_32.dll_inet_ntoa]
mov dword [ebp - 0x1a504], eax
cmp dword [ebp - 0x1a504], 0
je 0x481054
mov edx, dword [ebp - 0x1a504]
push edx
lea eax, [ebp - 0x194f8]
push eax
call fcn.0052a310
add esp, 8
movzx ecx, word [ebp - 0x180c6]
push ecx
call dword [sym.imp.WS2_32.dll_ntohs]
movzx edx, ax
push edx
lea eax, [ebp - 0x194f8]
push eax
push 0x5832e0
lea ecx, [ebp - 0x1a500]
push ecx
call fcn.0052a9d1
add esp, 0x10
push ecx
mov ecx, esp
mov dword [ebp - 0x1a644], esp
push 0x5832ec
call fcn.00415da0
mov dword [ebp - 0x1a7b8], eax
mov edx, dword [ebp - 0x1a7b8]
mov dword [ebp - 0x1a7bc], edx
mov byte [ebp - 4], 0x18
push ecx
mov ecx, esp
mov dword [ebp - 0x1a648], esp
push 0x5832f0
call fcn.00415da0
mov dword [ebp - 0x1a7c0], eax
mov eax, dword [ebp - 0x1a7c0]
mov dword [ebp - 0x1a7c4], eax
mov byte [ebp - 4], 0x19
push ecx
mov ecx, esp
mov dword [ebp - 0x1a64c], esp
push 0x5832f4
call fcn.00415da0
mov dword [ebp - 0x1a7c8], eax
mov ecx, dword [ebp - 0x1a7c8]
mov dword [ebp - 0x1a7cc], ecx
mov byte [ebp - 4], 0x1a
push 0
push 0
push 0xc8
push ecx
mov edx, esp
mov dword [ebp - 0x1a650], esp
lea eax, [ebp - 0x1a500]
push eax
push edx
call fcn.00499f80
add esp, 8
mov dword [ebp - 0x1a7d0], eax
mov ecx, dword [ebp + 8]
push ecx
mov byte [ebp - 4], 2
mov ecx, 0x5c8578
call fcn.004514c0
mov dword [ebp - 0x180b4], 0
push 1
push 0
push 0
push 0
push 1
push 2
call dword [sym.imp.WS2_32.dll_WSASocketW]
mov dword [ebp - 0x14], eax
call dword [sym.imp.WS2_32.dll_WSAGetLastError]
test eax, eax
je 0x48119e
mov byte [ebp - 0x203f], 1
push 0xa
lea edx, [ebp - 0x2040]
push edx
mov eax, dword [ebp - 0x2044]
mov ecx, dword [eax]
push ecx
mov ecx, dword [ebp - 0x1a67c]
call fcn.004c7f70
mov dword [ebp - 0x1a654], 0xffffffff
push 0x5b15cc
lea edx, [ebp - 0x1a654]
push edx
call fcn.005286d1
mov dword [ebp - 0x180dc], 0
cmp dword [0x5ec65c], 0
je 0x4811e2
mov dword [ebp - 0x1a518], 0x10
lea eax, [ebp - 0x1a518]
push eax
lea ecx, [ebp - 0x1a514]
push ecx
mov edx, dword [ebp + 8]
mov eax, dword [edx + 4]
push eax
call dword [sym.imp.WS2_32.dll_getsockname]
mov ecx, dword [ebp - 0x1a510]
mov dword [ebp - 0x180dc], ecx
xor edx, edx
mov word [ebp - 0x180d6], dx
mov eax, 2
mov word [ebp - 0x180d8], ax
mov ecx, dword [ebp - 0x180dc]
mov dword [ebp - 0x180d4], ecx
push 0x10
lea edx, [ebp - 0x180d8]
push edx
mov eax, dword [ebp - 0x14]
push eax
call dword [sym.imp.WS2_32.dll_bind]
test eax, eax
je 0x481235
mov dword [ebp - 0x1a658], 0xffffffff
push 0x5b15cc
lea ecx, [ebp - 0x1a658]
push ecx
call fcn.005286d1
push 5
mov edx, dword [ebp - 0x14]
push edx
call dword [sym.imp.WS2_32.dll_listen]
mov dword [ebp - 0x180b4], 0x10
lea eax, [ebp - 0x180b4]
push eax
lea ecx, [ebp - 0x180d8]
push ecx
mov edx, dword [ebp - 0x14]
push edx
call dword [sym.imp.WS2_32.dll_getsockname]
mov eax, dword [ebp - 0x180dc]
mov dword [ebp - 0x180d4], eax
mov byte [ebp - 0x203f], 5
mov byte [ebp - 0x203e], 0
mov byte [ebp - 0x203d], 1
push 4
lea ecx, [ebp - 0x180d4]
push ecx
lea edx, [ebp - 0x203c]
push edx
call fcn.005289e0
add esp, 0xc
push 2
lea eax, [ebp - 0x180d6]
push eax
lea ecx, [ebp - 0x2038]
push ecx
call fcn.005289e0
add esp, 0xc
push 0xa
lea edx, [ebp - 0x2040]
push edx
mov eax, dword [ebp - 0x2044]
mov ecx, dword [eax]
push ecx
mov ecx, dword [ebp - 0x1a67c]
call fcn.004c7f70
mov dword [ebp - 0x1a7d4], eax
cmp dword [ebp - 0x1a7d4], 0
jne 0x4812fb
mov dword [ebp - 0x1a65c], 0xffffffff
push 0x5b15cc
lea edx, [ebp - 0x1a65c]
push edx
call fcn.005286d1
mov dword [ebp - 0x180b0], 1
mov dword [ebp - 0x180ac], 0
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x180b8], eax
mov eax, dword [ebp + 8]
cmp dword [eax], 2
jne 0x48169c
mov dword [ebp - 0x180a8], 0
mov dword [ebp - 0x1a520], 0
jmp 0x48134c
mov ecx, dword [ebp - 0x1a520]
add ecx, 1
mov dword [ebp - 0x1a520], ecx
mov edx, dword [ebp - 0x1a520]
cmp edx, dword [ebp - 0x180a8]
jae 0x481370
mov eax, dword [ebp - 0x1a520]
mov ecx, dword [ebp + eax*4 - 0x180a4]
cmp ecx, dword [ebp - 0x14]
jne 0x48136e
jmp 0x481370
jmp 0x48133d
mov edx, dword [ebp - 0x1a520]
cmp edx, dword [ebp - 0x180a8]
jne 0x4813a6
cmp dword [ebp - 0x180a8], 0x40
jae 0x4813a6
mov eax, dword [ebp - 0x1a520]
mov ecx, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x180a4], ecx
mov edx, dword [ebp - 0x180a8]
add edx, 1
mov dword [ebp - 0x180a8], edx
xor eax, eax
jne 0x481331
mov dword [ebp - 0x1a524], 0
jmp 0x4813c5
mov ecx, dword [ebp - 0x1a524]
add ecx, 1
mov dword [ebp - 0x1a524], ecx
mov edx, dword [ebp - 0x1a524]
cmp edx, dword [ebp - 0x180a8]
jae 0x4813ee
mov eax, dword [ebp - 0x1a524]
mov ecx, dword [ebp - 0x2044]
mov edx, dword [ebp + eax*4 - 0x180a4]
cmp edx, dword [ecx]
jne 0x4813ec
jmp 0x4813ee
jmp 0x4813b6
mov eax, dword [ebp - 0x1a524]
cmp eax, dword [ebp - 0x180a8]
jne 0x481429
cmp dword [ebp - 0x180a8], 0x40
jae 0x481429
mov ecx, dword [ebp - 0x1a524]
mov edx, dword [ebp - 0x2044]
mov eax, dword [edx]
mov dword [ebp + ecx*4 - 0x180a4], eax
mov ecx, dword [ebp - 0x180a8]
add ecx, 1
mov dword [ebp - 0x180a8], ecx
xor edx, edx
jne 0x4813aa
lea eax, [ebp - 0x180b0]
push eax
push 0
push 0
lea ecx, [ebp - 0x180a8]
push ecx
push 0x40
call dword [sym.imp.WS2_32.dll_select]
mov dword [ebp - 0x1a51c], eax
cmp dword [ebp - 0x1a51c], 0
jne 0x4814a4
cmp dword [0x5fa5b4], 0
jg 0x481468
jmp 0x48131b
mov esi, dword [0x5fa5b4]
imul esi, esi, 0x3e8
call dword [sym.imp.KERNEL32.dll_GetTickCount]
sub eax, dword [ebp - 0x180b8]
cmp eax, esi
jle 0x48149f
mov dword [ebp - 0x1a660], 0xffffffff
push 0x5b15cc
lea edx, [ebp - 0x1a660]
push edx
call fcn.005286d1
jmp 0x48131b
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x180b8], eax
cmp dword [ebp - 0x1a51c], 0
jge 0x4814be
jmp 0x48169c
lea eax, [ebp - 0x180a8]
push eax
mov ecx, dword [ebp - 0x14]
push ecx
call sub.WS2_32.dll___WSAFDIsSet
test eax, eax
je 0x481663
mov dword [ebp - 0x180b4], 0x10
lea edx, [ebp - 0x180b4]
push edx
lea eax, [ebp - 0x1a534]
push eax
mov ecx, dword [ebp - 0x14]
push ecx
call dword [sym.imp.WS2_32.dll_accept]
mov dword [ebp - 0x1a538], eax
cmp dword [ebp - 0x1a538], 0xffffffff
jne 0x481522
mov dword [ebp - 0x1a664], 0xffffffff
push 0x5b15cc
lea edx, [ebp - 0x1a664]
push edx
call fcn.005286d1
mov eax, dword [ebp - 0x180c4]
cmp eax, dword [ebp - 0x1a530]
jne 0x48153f
movzx ecx, word [ebp - 0x180c6]
cmp ecx, dword [ebp - 0x1a530]
je 0x481560
push 2
mov edx, dword [ebp - 0x1a538]
push edx
call dword [sym.imp.WS2_32.dll_shutdown]
mov eax, dword [ebp - 0x1a538]
push eax
call dword [sym.imp.WS2_32.dll_closesocket]
jmp 0x48131b
mov byte [ebp - 0x2040], 5
mov byte [ebp - 0x203f], 0
mov byte [ebp - 0x203e], 0
mov byte [ebp - 0x203d], 1
push 4
lea ecx, [ebp - 0x1a530]
push ecx
lea edx, [ebp - 0x203c]
push edx
call fcn.005289e0
add esp, 0xc
push 2
lea eax, [ebp - 0x1a532]
push eax
lea ecx, [ebp - 0x2038]
push ecx
call fcn.005289e0
add esp, 0xc
push 0xa
lea edx, [ebp - 0x2040]
push edx
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 4]
push ecx
mov ecx, dword [ebp - 0x1a67c]
call fcn.004c7f70
mov dword [ebp - 0x1a7d8], eax
cmp dword [ebp - 0x1a7d8], 0
jne 0x48160d
push 2
mov edx, dword [ebp - 0x1a538]
push edx
call dword [sym.imp.WS2_32.dll_shutdown]
mov eax, dword [ebp - 0x1a538]
push eax
call dword [sym.imp.WS2_32.dll_closesocket]
mov dword [ebp - 0x1a668], 0xffffffff
push 0x5b15cc
lea ecx, [ebp - 0x1a668]
push ecx
call fcn.005286d1
mov edx, dword [ebp - 0x2044]
mov eax, dword [edx]
push eax
mov ecx, dword [ebp - 0x1a538]
push ecx
mov edx, dword [ebp + 8]
push edx
mov ecx, dword [ebp - 0x1a67c]
call fcn.004c81e0
push 2
mov eax, dword [ebp - 0x1a538]
push eax
call dword [sym.imp.WS2_32.dll_shutdown]
mov ecx, dword [ebp - 0x1a538]
push ecx
call dword [sym.imp.WS2_32.dll_closesocket]
mov dword [ebp - 0x1a66c], 0xffffffff
push 0x5b15cc
lea edx, [ebp - 0x1a66c]
push edx
call fcn.005286d1
lea eax, [ebp - 0x180a8]
push eax
mov ecx, dword [ebp - 0x2044]
mov edx, dword [ecx]
push edx
call sub.WS2_32.dll___WSAFDIsSet
test eax, eax
je 0x481697
mov dword [ebp - 0x1a670], 0xffffffff
push 0x5b15cc
lea eax, [ebp - 0x1a670]
push eax
call fcn.005286d1
jmp 0x48131b
mov dword [ebp - 0x1a674], 0xffffffff
push 0x5b15cc
lea ecx, [ebp - 0x1a674]
push ecx
call fcn.005286d1
mov dword [ebp - 0x1a678], 0
push 0x5b15cc
lea edx, [ebp - 0x1a678]
push edx
call fcn.005286d1
mov dword [ebp - 0x1a53c], 0
cmp dword [ebp - 0x14], 0xffffffff
je 0x4816ff
push 1
mov eax, dword [ebp - 0x14]
push eax
call dword [sym.imp.WS2_32.dll_shutdown]
mov ecx, dword [ebp - 0x14]
push ecx
call dword [sym.imp.WS2_32.dll_closesocket]
mov dword [ebp - 0x14], 0xffffffff
mov edx, dword [ebp - 0x2044]
cmp dword [edx], 0xffffffff
je 0x48171b
push 1
mov eax, dword [ebp - 0x2044]
mov ecx, dword [eax]
push ecx
call dword [sym.imp.WS2_32.dll_shutdown]
mov dword [ebp - 4], 0xffffffff
mov eax, 0x48172f
ret
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x1c]
xor ecx, ebp
call fcn.00527aad
mov esp, ebp
pop ebp
ret 4