Function at 0x4a5310
Capabilities:
Get socket status

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0x70
mov esi, esp
mov eax, dword [0x594180]
xor eax, ebp
mov dword [esi + 0x68], eax
mov eax, dword [0x598388]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
sete byte [esi + 0x33]
mov eax, dword [0x59838c]
cmp eax, 0xa
setl byte [esi + 0x34]
mov eax, 0xd46774d6
jmp 0x4a5373
mov eax, dword [esi + 0x3c]
cmp dword [eax], 0
sete byte [esi + 0x37]
mov eax, 0xfae149bd
movzx ecx, byte [esi + 0x37]
mov dword [esi + 0x58], ecx
jmp 0x4a53c0
mov eax, dword [0x598388]
lea ecx, [eax + 1]
imul ecx, eax
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete cl
mov eax, 0x7a600fa7
mov edi, 0x1d5bb2c3
cmove eax, edi
cmp dword [0x59838c], 0xa
mov edx, 0x7a600fa7
cmovge eax, edx
setl dl
xor dl, cl
cmovne eax, edi
nop word cs:[eax + eax]
cmp eax, 0x1d5bb2c2
jle 0x4a5460
cmp eax, 0x5775384d
jg 0x4a54b0
cmp eax, 0x40d6adc0
jle 0x4a5563
cmp eax, 0x4c17f6cd
jle 0x4a56be
cmp eax, 0x52006baf
jg 0x4a5afe
cmp eax, 0x4c17f6ce
je 0x4a5c33
cmp eax, 0x4dec743d
jne 0x4a53c0
mov edx, dword [0x598388]
mov ecx, dword [0x59838c]
lea eax, [edx + 1]
imul eax, edx
not eax
or eax, 0xfffffffe
cmp eax, 0xffffffff
sete dl
cmp ecx, 0xa
setl dh
xor dh, dl
mov edx, 0xbab6a68d
mov edi, 0x6acf3098
cmovne edx, edi
cmp eax, 0xffffffff
mov eax, edx
cmove eax, edi
cmp ecx, 0xa
mov ecx, dword [esi + 0x24]
cmovge eax, edx
jmp 0x4a53c0
cmp eax, 0xcd5423ad
jg 0x4a5520
cmp eax, 0xb6f64917
jle 0x4a55c2
cmp eax, 0xc58b7ecb
jle 0x4a56e9
cmp eax, 0xc9d57b48
jg 0x4a5b2a
cmp eax, 0xc58b7ecc
je 0x4a5c3d
cmp eax, 0xc76cef28
jne 0x4a53c0
mov eax, 0x5775384e
jmp 0x4a53c0
cmp eax, 0x66af02b7
jle 0x4a5628
cmp eax, 0x76adc8da
jle 0x4a5722
cmp eax, 0x7a4d0440
jg 0x4a5b85
cmp eax, 0x76adc8db
je 0x4a5c58
cmp eax, 0x799784e4
jne 0x4a53c0
mov eax, dword [0x598388]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
sete cl
mov eax, 0x59080afb
mov edi, 0x7a4d0441
cmove eax, edi
cmp dword [0x59838c], 0xa
mov edx, 0x59080afb
jmp 0x4a53a7
cmp eax, 0xe8b34b19
jle 0x4a565e
cmp eax, 0xffee5837
jle 0x4a5980
cmp eax, 0x97c3265
jg 0x4a5ba5
cmp eax, 0xffee5838
je 0x4a5cb5
cmp eax, 0x25b4b57
jne 0x4a53c0
mov eax, dword [esi]
mov eax, 0x97c3266
jmp 0x4a53c0
cmp eax, 0x2d3128c1
jg 0x4a59ef
cmp eax, 0x24c80fd8
jle 0x4a5c1e
cmp eax, 0x24c80fd9
je 0x4a5cd5
cmp eax, 0x2b32e38c
jne 0x4a53c0
mov edx, dword [0x598388]
mov ecx, dword [0x59838c]
lea eax, [edx + 1]
imul eax, edx
mov edx, eax
xor edx, 0xfffffffe
test edx, eax
sete bl
cmp ecx, 0xa
setl bh
xor bh, bl
mov edi, 0x5ade8d53
mov ebx, 0xc9d57b49
jmp 0x4a611f
cmp eax, 0x96230616
jg 0x4a5a2b
cmp eax, 0x891cc44a
je 0x4a5cf7
cmp eax, 0x8eda3827
je 0x4a5d2a
cmp eax, 0x8fbf8692
jne 0x4a53c0
movzx eax, byte [esi + 0xf]
mov ecx, dword [esi + 0x2c]
mov byte [ecx], al
mov eax, dword [esi + 0x2c]
xor ecx, ecx
cmp byte [eax], 0
sete cl
add ecx, ecx
mov eax, dword [esi + 0x20]
mov dword [eax], ecx
mov eax, dword [esi + 0x38]
mov dword [eax], 1
mov eax, dword [esi + 0x2c]
mov eax, dword [esi + 0x54]
mov eax, dword [esi + 0x50]
mov eax, dword [esi + 0x3c]
mov eax, 0x16d8d939
jmp 0x4a53c0
cmp eax, 0x5c4cd04f
jg 0x4a5a7f
cmp eax, 0x5775384e
je 0x4a5d46
cmp eax, 0x59080afb
je 0x4a5d5b
cmp eax, 0x5ade8d53
jne 0x4a53c0
mov eax, 0x2b32e38c
jmp 0x4a53c0
cmp eax, 0xd46774d5
jg 0x4a5aaa
cmp eax, 0xcd5423ae
je 0x4a5d65
cmp eax, 0xd41f786e
je 0x4a5d98
cmp eax, 0xd44e83d6
jne 0x4a53c0
mov edx, dword [0x598388]
mov ecx, dword [0x59838c]
lea eax, [edx + 1]
imul eax, edx
not eax
or eax, 0xfffffffe
cmp eax, 0xffffffff
sete dl
cmp ecx, 0xa
setl dh
xor dh, dl
mov edx, 0x5ade8d53
mov edi, 0x2b32e38c
jmp 0x4a6280
cmp eax, 0x40d6adc1
je 0x4a5da2
cmp eax, 0x414013ee
je 0x4a5dc0
cmp eax, 0x4b391d29
jne 0x4a53c0
mov eax, 0x229e8d47
jmp 0x4a53c0
cmp eax, 0xb6f64918
je 0x4a5dca
cmp eax, 0xbab6a68d
je 0x4a5de6
cmp eax, 0xbfbe96d8
jne 0x4a53c0
mov eax, dword [esi + 0x1c]
cmp dword [eax], 0
mov eax, 0xe7c06917
mov ecx, 0xffee5838
cmovg eax, ecx
jmp 0x4a53c0
cmp eax, 0x66af02b8
je 0x4a5360
cmp eax, 0x6a467bb2
je 0x4a6011
cmp eax, 0x6acf3098
jne 0x4a53c0
push 0x104
push dword [esi]
push dword [esi + 0x24]
call fcn.00562310
add esp, 0xc
mov eax, dword [esi + 0x28]
push 0x104
push dword [esi]
push dword [esi + 0x28]
call fcn.00562310
add esp, 0xc
mov eax, dword [esi + 0x14]
mov eax, dword [esi + 0x60]
mov eax, dword [eax]
mov ecx, dword [esi + 0x14]
mov dword [ecx], eax
mov eax, dword [esi + 0x5c]
mov eax, dword [eax]
mov ecx, dword [esi + 0x14]
mov dword [ecx + 4], eax
mov eax, dword [esi + 0x1c]
mov eax, dword [esi + 8]
mov ecx, dword [esi + 0x18]
mov dword [eax], ecx
mov eax, dword [esi + 8]
mov ecx, dword [esi]
mov dword [eax + 4], ecx
mov eax, dword [esi + 8]
mov ecx, dword [esi + 0x24]
mov dword [eax + 8], ecx
mov eax, dword [esi + 8]
mov ecx, dword [esi + 0x28]
mov dword [eax + 0xc], ecx
mov eax, dword [esi + 8]
mov ecx, dword [esi + 0x14]
mov dword [eax + 0x10], ecx
mov eax, dword [esi + 8]
mov ecx, dword [eax]
mov dword [esi + 0x4c], ecx
mov ecx, dword [eax + 4]
mov dword [esi + 0x48], ecx
mov ecx, dword [eax + 8]
mov dword [esi + 0x44], ecx
mov ecx, dword [eax + 0xc]
mov dword [esi + 0x40], ecx
mov edi, dword [eax + 0x10]
mov eax, 0xb8c30e8e
xor ebx, ebx
nop word cs:[eax + eax]
cmp eax, 0xfdca7e95
jg 0x4a5810
cmp eax, 0x9ae68794
je 0x4a6027
cmp eax, 0xb8c30e8e
je 0x4a593b
cmp eax, 0xd7e067e4
jne 0x4a57e0
mov eax, 0x9ae68794
jmp 0x4a57e0
cmp eax, 0xfdca7e96
je 0x4a5945
cmp eax, 0x43110468
je 0x4a594f
cmp eax, 0x658ab188
jne 0x4a57e0
mov eax, dword [0x598390]
mov ecx, dword [0x598394]
lea edx, [eax - 1]
imul edx, eax
not edx
or edx, 0xfffffffe
cmp edx, 0xffffffff
sete byte [esi + 6]
cmp ecx, 0xa
setl byte [esi + 7]
mov eax, 0xe9b6afcc
nop word cs:[eax + eax]
cmp eax, 0x34f3957c
jg 0x4a58b0
cmp eax, 0x8a7b77dd
je 0x4a591a
cmp eax, 0xe9b6afcc
jne 0x4a5860
movzx ecx, byte [esi + 6]
movzx eax, byte [esi + 7]
mov edx, ecx
xor dl, al
test al, al
mov eax, 0x8a7b77dd
mov ebx, 0x705171d6
cmovne eax, ebx
test cl, cl
mov ecx, 0x8a7b77dd
cmove eax, ecx
test dl, dl
cmovne eax, ebx
jmp 0x4a5860
cmp eax, 0x34f3957d
je 0x4a5969
cmp eax, 0x705171d6
jne 0x4a5860
mov eax, dword [esi + 0x4c]
mov eax, dword [eax]
inc eax
push edi
push dword [esi + 0x40]
push dword [esi + 0x44]
push dword [esi + 0x48]
push eax
call dword [sym.imp.WS2_32.dll_select]
mov dword [esi + 0x64], eax
mov eax, dword [0x598390]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
sete cl
mov eax, 0x8a7b77dd
mov ebx, 0x34f3957d
cmove eax, ebx
cmp dword [0x598394], 0xa
mov edx, 0x8a7b77dd
cmovge eax, edx
setl dl
xor dl, cl
cmovne eax, ebx
jmp 0x4a5860
mov eax, dword [esi + 0x4c]
mov eax, dword [eax]
inc eax
push edi
push dword [esi + 0x40]
push dword [esi + 0x44]
push dword [esi + 0x48]
push eax
call dword [sym.imp.WS2_32.dll_select]
mov eax, 0x705171d6
jmp 0x4a5860
mov eax, 0x658ab188
jmp 0x4a57e0
mov eax, 0xb8c30e8e
jmp 0x4a57e0
call fcn.00566ab7
cmp dword [eax], 4
mov eax, 0xd7e067e4
mov ecx, 0xfdca7e96
cmove eax, ecx
jmp 0x4a57e0
mov ebx, dword [esi + 0x64]
test ebx, ebx
mov eax, 0xd7e067e4
mov ecx, 0x43110468
cmovs eax, ecx
jmp 0x4a57e0
cmp eax, 0xe8b34b1a
je 0x4a5378
cmp eax, 0xf52c8437
je 0x4a6079
cmp eax, 0xfae149bd
jne 0x4a53c0
mov edx, dword [0x598388]
mov ecx, dword [0x59838c]
lea eax, [edx + 1]
imul eax, edx
not eax
or eax, 0xfffffffe
cmp eax, 0xffffffff
sete dl
cmp ecx, 0xa
setl dh
xor dh, dl
mov edx, 0x8fbf8692
mov edi, 0x16d8d939
cmovne edx, edi
cmp eax, 0xffffffff
mov eax, edx
cmove eax, edi
cmp ecx, 0xa
cmovge eax, edx
mov ecx, dword [esi + 0x58]
and cl, 1
mov byte [esi + 0xf], cl
jmp 0x4a53c0
cmp eax, 0x2d3128c2
je 0x4a6083
cmp eax, 0x38ab8e9d
je 0x4a60c9
cmp eax, 0x3e536260
jne 0x4a53c0
mov eax, dword [esi + 0x10]
mov eax, dword [eax]
mov ecx, dword [esi]
cmp eax, dword [ecx]
mov eax, 0xc58b7ecc
mov ecx, 0x24c80fd9
cmovb eax, ecx
jmp 0x4a53c0
cmp eax, 0x96230617
je 0x4a60f1
cmp eax, 0x98e031c2
je 0x4a6134
cmp eax, 0x99a1dd5d
jne 0x4a53c0
mov edx, dword [0x598388]
mov ecx, dword [0x59838c]
lea eax, [edx + 1]
imul eax, edx
mov edx, eax
xor edx, 0xfffffffe
test edx, eax
sete bl
cmp ecx, 0xa
setl bh
xor bh, bl
mov edi, 0x63dbbf47
mov ebx, 0xd41f786e
jmp 0x4a611f
cmp eax, 0x5c4cd050
je 0x4a613e
cmp eax, 0x60259f98
je 0x4a615f
cmp eax, 0x63dbbf47
jne 0x4a53c0
mov eax, 0x99a1dd5d
jmp 0x4a53c0
cmp eax, 0xd46774d6
je 0x4a6175
cmp eax, 0xe5c34c5e
je 0x4a61a4
cmp eax, 0xe7c06917
jne 0x4a53c0
mov edx, dword [0x598388]
mov ecx, dword [0x59838c]
lea eax, [edx + 1]
imul eax, edx
mov edx, eax
xor edx, 0xfffffffe
test edx, eax
sete bl
cmp ecx, 0xa
setl bh
xor bh, bl
mov edi, 0x8eda3827
mov ebx, 0xcb3e5b2a
jmp 0x4a611f
cmp eax, 0x52006bb0
je 0x4a6296
cmp eax, 0x523ee942
jne 0x4a53c0
mov eax, dword [esi + 0x10]
mov eax, dword [esi + 0x10]
mov dword [eax], 0
mov eax, 0x3e536260
jmp 0x4a53c0
cmp eax, 0xc9d57b49
je 0x4a62c9
cmp eax, 0xcb3e5b2a
jne 0x4a53c0
mov eax, dword [esi + 0x20]
mov dword [eax], 2
mov eax, dword [esi + 0x38]
mov dword [eax], 1
mov edx, dword [0x598388]
mov ecx, dword [0x59838c]
lea eax, [edx + 1]
imul eax, edx
mov edx, eax
xor edx, 0xfffffffe
test edx, eax
sete bl
cmp ecx, 0xa
setl bh
xor bh, bl
mov edi, 0x8eda3827
mov ebx, 0x4b391d29
jmp 0x4a611f
cmp eax, 0x7a4d0441
je 0x4a62d3
cmp eax, 0x7a600fa7
jne 0x4a53c0
mov eax, 0xe8b34b1a
jmp 0x4a53c0
cmp eax, 0x97c3266
je 0x4a62dd
cmp eax, 0x16d8d939
jne 0x4a53c0
movzx eax, byte [esi + 0xf]
mov ecx, dword [esi + 0x2c]
mov byte [ecx], al
mov eax, dword [esi + 0x2c]
xor ecx, ecx
cmp byte [eax], 0
sete cl
add ecx, ecx
mov eax, dword [esi + 0x20]
mov dword [eax], ecx
mov eax, dword [esi + 0x38]
mov dword [eax], 1
mov eax, dword [esi + 0x2c]
mov eax, dword [esi + 0x54]
mov eax, dword [esi + 0x50]
mov eax, dword [esi + 0x3c]
mov eax, dword [0x598388]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
sete cl
mov eax, 0x8fbf8692
mov edi, 0x98e031c2
cmove eax, edi
cmp dword [0x59838c], 0xa
mov edx, 0x8fbf8692
jmp 0x4a53a7
cmp eax, 0x1d5bb2c3
jne 0x4a633b
mov eax, 0x96230617
jmp 0x4a53c0
mov eax, 0x523ee942
jmp 0x4a53c0
mov eax, dword [esi + 0x10]
mov eax, dword [eax]
mov ecx, dword [esi]
cmp eax, dword [ecx]
mov eax, 0x38ab8e9d
mov ecx, 0xcd5423ae
cmove eax, ecx
jmp 0x4a53c0
mov eax, dword [esi + 0x3c]
mov eax, dword [esi + 0x3c]
mov dword [eax], 0
mov eax, dword [esi + 0x50]
mov eax, dword [esi + 0x50]
mov dword [eax], 4
mov eax, dword [esi + 0x54]
mov eax, dword [esi + 0x18]
push dword [esi + 0x50]
push dword [esi + 0x3c]
push 0x1007
push 0xffff
push dword [eax]
call dword [sym.imp.WS2_32.dll_getsockopt]
mov ecx, dword [esi + 0x54]
mov dword [ecx], eax
mov eax, dword [esi + 0x2c]
mov eax, dword [esi + 0x54]
cmp dword [eax], 0
mov eax, 0xfae149bd
mov ecx, 0x66af02b8
cmovns eax, ecx
mov dword [esi + 0x58], 0
jmp 0x4a53c0
mov eax, dword [esi + 0x18]
push dword [esi]
push dword [eax]
call sub.WS2_32.dll___WSAFDIsSet
test eax, eax
mov eax, 0x76adc8db
mov ecx, 0x5c4cd050
cmove eax, ecx
jmp 0x4a53c0
mov eax, dword [esi]
mov ecx, dword [esi + 0x10]
mov ecx, dword [ecx]
mov eax, dword [eax + ecx*4 + 4]
mov ecx, dword [esi + 0x18]
cmp eax, dword [ecx]
mov eax, 0xc76cef28
mov ecx, 0xd44e83d6
cmove eax, ecx
jmp 0x4a53c0
mov eax, dword [0x598388]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
sete cl
mov eax, 0x63dbbf47
mov edi, 0x99a1dd5d
cmove eax, edi
cmp dword [0x59838c], 0xa
mov edx, 0x63dbbf47
jmp 0x4a53a7
mov eax, dword [esi + 0x20]
mov dword [eax], 2
mov eax, dword [esi + 0x38]
mov dword [eax], 1
mov eax, 0xcb3e5b2a
jmp 0x4a53c0
mov eax, dword [esi + 0x10]
mov eax, dword [eax]
inc eax
mov ecx, dword [esi + 0x10]
mov dword [ecx], eax
mov eax, 0x3e536260
jmp 0x4a53c0
mov eax, 0x799784e4
jmp 0x4a53c0
mov eax, dword [0x598388]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
sete cl
mov eax, 0x25b4b57
mov edi, 0x97c3266
cmove eax, edi
cmp dword [0x59838c], 0xa
mov edx, 0x25b4b57
jmp 0x4a53a7
mov eax, 0x38ab8e9d
jmp 0x4a53c0
mov eax, dword [esi + 0x18]
mov eax, dword [eax]
mov ecx, dword [esi]
mov edx, dword [esi + 0x10]
mov edx, dword [edx]
mov dword [ecx + edx*4 + 4], eax
mov eax, dword [esi]
inc dword [eax]
mov eax, 0x891cc44a
jmp 0x4a53c0
mov eax, 0x229e8d47
jmp 0x4a53c0
mov eax, dword [esi + 0x20]
mov dword [eax], 0xd
mov eax, dword [esi + 0x38]
mov dword [eax], 1
mov eax, 0x2d3128c2
jmp 0x4a53c0
push 0x104
push dword [esi]
push dword [esi + 0x24]
call fcn.00562310
add esp, 0xc
mov eax, dword [esi + 0x28]
push 0x104
push dword [esi]
push dword [esi + 0x28]
call fcn.00562310
add esp, 0xc
mov eax, dword [esi + 0x14]
mov eax, dword [esi + 0x60]
mov eax, dword [eax]
mov ecx, dword [esi + 0x14]
mov dword [ecx], eax
mov eax, dword [esi + 0x5c]
mov eax, dword [eax]
mov ecx, dword [esi + 0x14]
mov dword [ecx + 4], eax
mov eax, dword [esi + 0x1c]
mov eax, dword [esi + 8]
mov ecx, dword [esi + 0x18]
mov dword [eax], ecx
mov eax, dword [esi + 8]
mov ecx, dword [esi]
mov dword [eax + 4], ecx
mov eax, dword [esi + 8]
mov ecx, dword [esi + 0x24]
mov dword [eax + 8], ecx
mov eax, dword [esi + 8]
mov ecx, dword [esi + 0x28]
mov dword [eax + 0xc], ecx
mov eax, dword [esi + 8]
mov ecx, dword [esi + 0x14]
mov dword [eax + 0x10], ecx
mov eax, dword [esi + 8]
mov ecx, dword [eax]
mov dword [esi + 0x4c], ecx
mov ecx, dword [eax + 4]
mov dword [esi + 0x48], ecx
mov ecx, dword [eax + 8]
mov dword [esi + 0x44], ecx
mov ecx, dword [eax + 0xc]
mov dword [esi + 0x40], ecx
mov edi, dword [eax + 0x10]
mov eax, 0xb8c30e8e
xor ebx, ebx
nop word [eax + eax]
cmp eax, 0xfdca7e95
jg 0x4a5eb0
cmp eax, 0x9ae68794
je 0x4a6329
cmp eax, 0xb8c30e8e
je 0x4a5fcc
cmp eax, 0xd7e067e4
jne 0x4a5e80
mov eax, 0x9ae68794
jmp 0x4a5e80
cmp eax, 0xfdca7e96
je 0x4a5fd6
cmp eax, 0x43110468
je 0x4a5fe0
cmp eax, 0x658ab188
jne 0x4a5e80
mov eax, dword [0x598390]
mov ecx, dword [0x598394]
lea edx, [eax + 1]
imul edx, eax
mov eax, edx
xor eax, 0xfffffffe
test eax, edx
sete byte [esi + 6]
cmp ecx, 0xa
setl byte [esi + 7]
mov eax, 0xe9b6afcc
nop word cs:[eax + eax]
cmp eax, 0x34f3957c
jg 0x4a5f40
cmp eax, 0x8a7b77dd
je 0x4a5fab
cmp eax, 0xe9b6afcc
jne 0x4a5f00
movzx ecx, byte [esi + 6]
movzx eax, byte [esi + 7]
mov edx, ecx
xor dl, al
mov edx, 0x8a7b77dd
mov ebx, 0x705171d6
cmovne edx, ebx
test al, al
mov eax, edx
cmovne eax, ebx
test cl, cl
cmove eax, edx
jmp 0x4a5f00
cmp eax, 0x34f3957d
je 0x4a5ffa
cmp eax, 0x705171d6
jne 0x4a5f00
mov eax, dword [esi + 0x4c]
mov eax, dword [eax]
inc eax
push edi
push dword [esi + 0x40]
push dword [esi + 0x44]
push dword [esi + 0x48]
push eax
call dword [sym.imp.WS2_32.dll_select]
mov dword [esi + 0x64], eax
mov eax, dword [0x598390]
lea ecx, [eax + 1]
imul ecx, eax
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete cl
mov eax, 0x8a7b77dd
mov ebx, 0x34f3957d
cmove eax, ebx
cmp dword [0x598394], 0xa
mov edx, 0x8a7b77dd
cmovge eax, edx
setl dl
xor dl, cl
cmovne eax, ebx
jmp 0x4a5f00
mov eax, dword [esi + 0x4c]
mov eax, dword [eax]
inc eax
push edi
push dword [esi + 0x40]
push dword [esi + 0x44]
push dword [esi + 0x48]
push eax
call dword [sym.imp.WS2_32.dll_select]
mov eax, 0x705171d6
jmp 0x4a5f00
mov eax, 0x658ab188
jmp 0x4a5e80
mov eax, 0xb8c30e8e
jmp 0x4a5e80
call fcn.00566ab7
cmp dword [eax], 4
mov eax, 0xd7e067e4
mov ecx, 0xfdca7e96
cmove eax, ecx
jmp 0x4a5e80
mov ebx, dword [esi + 0x64]
test ebx, ebx
mov eax, 0xd7e067e4
mov ecx, 0x43110468
cmovs eax, ecx
jmp 0x4a5e80
cmp byte [esi + 0x35], 0
mov eax, 0x891cc44a
mov ecx, 0x40d6adc1
cmovne eax, ecx
jmp 0x4a53c0
mov eax, dword [esi + 0x1c]
mov dword [eax], ebx
mov edx, dword [0x598388]
mov ecx, dword [0x59838c]
lea eax, [edx + 1]
imul eax, edx
mov edx, eax
xor edx, 0xfffffffe
test edx, eax
sete bl
cmp ecx, 0xa
setl bh
xor bh, bl
mov edi, 0xbab6a68d
mov ebx, 0x60259f98
cmovne edi, ebx
test edx, eax
mov eax, edi
cmove eax, ebx
cmp ecx, 0xa
cmovge eax, edi
mov ecx, dword [esi + 0x1c]
cmp dword [ecx], 0
sete byte [esi + 0x36]
jmp 0x4a53c0
mov eax, 0xe5c34c5e
jmp 0x4a53c0
mov eax, dword [esi + 0x20]
mov dword [eax], 0xd
mov eax, dword [esi + 0x38]
mov dword [eax], 1
mov edx, dword [0x598388]
mov ecx, dword [0x59838c]
lea eax, [edx - 1]
imul eax, edx
not eax
or eax, 0xfffffffe
cmp eax, 0xffffffff
sete dl
cmp ecx, 0xa
setl dh
xor dh, dl
mov edx, 0xb6f64918
mov edi, 0x414013ee
jmp 0x4a6280
mov eax, dword [esi + 0x10]
mov eax, dword [0x598388]
lea ecx, [eax + 1]
imul ecx, eax
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete cl
mov eax, 0x7a600fa7
mov edi, 0xe8b34b1a
jmp 0x4a5398
mov edx, dword [0x598388]
mov ecx, dword [0x59838c]
lea eax, [edx + 1]
imul eax, edx
mov edx, eax
xor edx, 0xfffffffe
test edx, eax
sete bl
cmp ecx, 0xa
setl bh
xor bh, bl
mov edi, 0x59080afb
mov ebx, 0x799784e4
cmovne edi, ebx
test edx, eax
mov eax, edi
cmove eax, ebx
cmp ecx, 0xa
cmovge eax, edi
jmp 0x4a53c0
mov eax, 0x229e8d47
jmp 0x4a53c0
mov eax, dword [esi + 0x18]
push dword [esi + 0x24]
push dword [eax]
call sub.WS2_32.dll___WSAFDIsSet
test eax, eax
mov eax, 0x76adc8db
mov ecx, 0xe7c06917
cmove eax, ecx
jmp 0x4a53c0
cmp byte [esi + 0x36], 0
mov eax, 0xbfbe96d8
mov ecx, 0x52006bb0
cmovne eax, ecx
jmp 0x4a53c0
movzx ecx, byte [esi + 0x33]
movzx eax, byte [esi + 0x34]
mov edx, eax
xor dl, cl
test al, al
mov eax, 0xf52c8437
mov edi, 0xe5c34c5e
cmovne eax, edi
test cl, cl
mov ecx, 0xf52c8437
cmove eax, ecx
test dl, dl
cmovne eax, edi
jmp 0x4a53c0
push eax
mov eax, esp
mov dword [esi + 0x20], eax
sub esp, 8
mov eax, esp
and eax, 0xfffffff8
mov esp, eax
mov dword [esi + 0x5c], eax
push eax
push eax
mov eax, esp
and eax, 0xfffffff8
mov esp, eax
mov dword [esi + 0x60], eax
push eax
mov eax, esp
mov dword [esi + 0x18], eax
sub esp, 0x104
mov eax, esp
mov dword [esi], eax
push eax
mov eax, esp
mov dword [esi + 0x10], eax
sub esp, 0x104
mov eax, esp
mov dword [esi + 0x24], eax
sub esp, 0x104
mov eax, esp
mov dword [esi + 0x28], eax
sub esp, 8
mov eax, esp
mov dword [esi + 0x14], eax
push eax
mov eax, esp
mov dword [esi + 0x1c], eax
sub esp, 0x14
mov eax, esp
mov dword [esi + 8], eax
push eax
mov eax, esp
mov dword [esi + 0x38], eax
push eax
mov eax, esp
mov dword [esi + 0x3c], eax
push eax
mov eax, esp
mov dword [esi + 0x50], eax
push eax
mov eax, esp
mov dword [esi + 0x54], eax
push eax
mov eax, esp
mov dword [esi + 0x2c], eax
mov eax, dword [esi + 0x5c]
mov ecx, dword [ebp + 0x18]
mov dword [eax + 4], ecx
mov ecx, dword [ebp + 0x14]
mov dword [eax], ecx
mov eax, dword [esi + 0x60]
mov ecx, dword [ebp + 0x10]
mov dword [eax + 4], ecx
mov ecx, dword [ebp + 0xc]
mov dword [eax], ecx
mov eax, dword [esi + 0x18]
mov ecx, dword [ebp + 8]
mov dword [eax], ecx
mov eax, dword [esi]
mov eax, dword [esi]
mov dword [eax], 0
mov edx, dword [0x598388]
mov ecx, dword [0x59838c]
lea eax, [edx + 1]
imul eax, edx
not eax
or eax, 0xfffffffe
cmp eax, 0xffffffff
sete dl
cmp ecx, 0xa
setl dh
xor dh, dl
mov edx, 0xf52c8437
mov edi, 0x4c17f6ce
cmovne edx, edi
cmp eax, 0xffffffff
mov eax, edx
cmove eax, edi
cmp ecx, 0xa
cmovge eax, edx
jmp 0x4a53c0
mov eax, dword [0x598388]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
sete cl
mov eax, 0xb6f64918
mov edi, 0x2d3128c2
cmove eax, edi
cmp dword [0x59838c], 0xa
mov edx, 0xb6f64918
jmp 0x4a53a7
mov eax, 0xc58b7ecc
jmp 0x4a53c0
mov eax, 0x4dec743d
jmp 0x4a53c0
mov edx, dword [0x598388]
mov ecx, dword [0x59838c]
lea eax, [edx + 1]
imul eax, edx
mov edx, eax
xor edx, 0xfffffffe
test edx, eax
sete bl
cmp ecx, 0xa
setl bh
xor bh, bl
mov edi, 0x25b4b57
mov ebx, 0x6a467bb2
cmovne edi, ebx
test edx, eax
mov eax, edi
cmove eax, ebx
cmp ecx, 0xa
cmovge eax, edi
mov ecx, dword [esi]
cmp dword [ecx], 0x40
setb byte [esi + 0x35]
jmp 0x4a53c0
mov eax, dword [esi + 0x1c]
mov dword [eax], ebx
mov eax, dword [esi + 0x1c]
mov eax, 0x6acf3098
jmp 0x4a53c0
cmp eax, 0x229e8d47
jne 0x4a53c0
mov eax, dword [esi + 0x1c]
mov eax, dword [esi + 0x14]
mov eax, dword [esi + 0x28]
mov eax, dword [esi + 0x24]
mov eax, dword [esi]
mov eax, dword [esi + 0x20]
mov edi, dword [eax]
mov ecx, dword [esi + 0x68]
xor ecx, ebp
call fcn.0055d8e5
mov eax, edi
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret