Function at 0x4d3170
Capabilities:
Get socket status

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x559410
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0xf0
push ebx
push esi
push edi
lea eax, [ebp - 0x7c]
mov dword [ebp - 0x10], esp
mov esi, ecx
xor ebx, ebx
push eax
mov dword [ebp - 0x2c], esi
mov dword [ebp - 4], ebx
mov dword [ebp - 0x64], 3
mov dword [ebp - 0x60], ebx
call fcn.0051dd2e
lea ecx, [ebp - 0x28]
push ecx
call fcn.0051dd2e
mov eax, dword [esi + 0x8c]
add esp, 8
cmp eax, ebx
jne 0x4d31cf
cmp dword [esi + 0x9c], ebx
je 0x4d31df
cmp dword [esi + 0x1e8], ebx
je 0x4d31e8
cmp dword [esi + 0x1ec], ebx
je 0x4d31e8
mov dword [ebp - 0x1c], 1
jmp 0x4d31eb
mov dword [ebp - 0x1c], ebx
mov ecx, esi
call fcn.004f4a60
mov ecx, esi
call fcn.004f4f60
mov ecx, esi
call fcn.004f4320
cmp dword [esi + 0x38], ebx
je 0x4d326a
mov ecx, esi
call fcn.004d3be0
lea ecx, [esi + 0x48]
call fcn.004c5fb0
mov edx, dword [esi + 0x210]
mov ecx, dword [esi + 0x214]
lea eax, [esi + 0x20]
mov dword [esi + 0x30], ebx
push eax
push 0x1389
mov dword [eax], edx
mov edx, dword [esi + 0x218]
mov dword [eax + 4], ecx
mov ecx, dword [esi + 0x21c]
mov dword [esi + 0x28], edx
mov edx, dword [esi + 0x10]
mov dword [esi + 0x2c], ecx
push 0x111
mov eax, dword [edx]
push eax
call dword [sym.imp.USER32.dll_SendMessageA]
mov eax, 0x7540
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
lea ecx, [ebp - 0x64]
lea edx, [esi + 0x6b0]
push ecx
lea eax, [esi + 0x4ac]
push edx
lea ecx, [esi + 0x2a8]
push eax
push ecx
push ebx
call sub.WSOCK32.dll_select
mov edi, eax
mov eax, dword [esi + 0x38]
cmp eax, ebx
je 0x4d32b7
mov ecx, esi
call fcn.004d3be0
lea ecx, [esi + 0x48]
call fcn.004c5fb0
mov eax, 0x7540
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [esi + 0x218]
mov ecx, dword [esi + 0x21c]
or eax, ecx
jne 0x4d32f8
lea edx, [ebp - 0x28]
push edx
call fcn.0051dd2e
mov eax, dword [ebp - 0x28]
mov edx, dword [ebp - 0x7c]
sub eax, edx
add esp, 4
cmp eax, 0x12c
jle 0x4d32f8
mov eax, 0x7532
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp edi, 0xffffffff
je 0x4d3352
cmp edi, ebx
je 0x4d3352
xor edi, edi
cmp edi, dword [esi + 0x1fc]
jge 0x4d3380
lea ecx, [edi + edi*8]
lea edx, [edi + ecx*8]
mov ecx, dword [esi + 0x2a4]
lea eax, [edi + edx*4]
lea eax, [eax + eax*2]
shl eax, 4
add ecx, eax
cmp dword [ecx + 0x54], ebx
je 0x4d334f
cmp dword [esi + 0x38], ebx
je 0x4d334a
lea ecx, [esi + 0x48]
call fcn.004c5fb0
mov eax, 0x7540
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
call fcn.004d0080
inc edi
jmp 0x4d3303
xor edi, edi
cmp edi, dword [esi + 0x1fc]
jge 0x4d3380
lea edx, [edi + edi*8]
lea eax, [edi + edx*8]
mov edx, dword [esi + 0x2a4]
lea eax, [edi + eax*4]
lea ecx, [eax + eax*2]
shl ecx, 4
add ecx, edx
cmp dword [ecx + 0x54], ebx
je 0x4d337d
call fcn.004cf990
inc edi
jmp 0x4d3354
push ebx
mov ecx, esi
call fcn.004f43f0
lea eax, [ebp - 0x70]
push eax
call fcn.0051dd2e
mov eax, dword [ebp - 0x70]
mov ecx, dword [ebp - 0x28]
sub eax, ecx
mov edx, dword [ebp - 0x24]
and edx, 0xffff
add esp, 4
lea eax, [eax + eax*4]
lea eax, [eax + eax*4]
lea ecx, [eax + eax*4]
mov eax, dword [ebp - 0x6c]
shl ecx, 3
sub ecx, edx
and eax, 0xffff
add ecx, eax
cmp ecx, 0xfa
jl 0x4d347c
lea ecx, [ebp - 0x28]
push ecx
call fcn.0051dd2e
add esp, 4
xor edi, edi
cmp edi, dword [esi + 0x1fc]
jge 0x4d347a
lea edx, [edi + edi*8]
lea eax, [edi + edx*8]
mov edx, dword [esi + 0x2a4]
lea eax, [edi + eax*4]
lea ecx, [eax + eax*2]
shl ecx, 4
lea eax, [ecx + edx]
mov ecx, dword [ecx + edx + 0x54]
test ecx, ecx
je 0x4d3474
mov ecx, dword [eax + 0x70]
mov dword [ebp - 0x14], ecx
mov ecx, dword [ecx]
cmp dword [ecx], 0
je 0x4d3474
mov ecx, dword [eax + 0x38]
mov edx, dword [eax + 0x3c]
mov ebx, ecx
or ebx, edx
je 0x4d3474
mov dword [ebp - 0x50], edx
mov edx, dword [eax + 0x40]
mov dword [ebp - 0x4c], edx
mov edx, dword [eax + 0x20]
mov ebx, dword [eax + 0x58]
mov dword [ebp - 0x54], ecx
mov ecx, dword [eax + 0x44]
mov dword [ebp - 0x44], edx
mov edx, dword [eax + 0x28]
mov dword [ebp - 0x48], ecx
mov ecx, dword [eax + 0x24]
mov dword [ebp - 0x3c], edx
mov edx, dword [eax + 0x30]
mov dword [ebp - 0x40], ecx
mov ecx, dword [eax + 0x2c]
mov eax, dword [eax + 0x34]
mov dword [ebp - 0x34], edx
mov edx, dword [ebp - 0x14]
mov dword [ebp - 0x5c], ebx
mov dword [ebp - 0x38], ecx
mov dword [ebp - 0x30], eax
mov eax, dword [edx]
lea ecx, [ebp - 0x5c]
push ecx
mov ecx, dword [eax]
push 0x13ef
push 0x111
push ecx
call dword [sym.imp.USER32.dll_SendMessageA]
inc edi
jmp 0x4d33d7
xor ebx, ebx
cmp dword [esi + 0x38], ebx
je 0x4d34a6
mov ecx, esi
call fcn.004d3be0
lea ecx, [esi + 0x48]
call fcn.004c5fb0
mov eax, 0x7540
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp dword [ebp - 0x1c], ebx
je 0x4d352a
cmp dword [esi + 0x214], ebx
jg 0x4d34c9
jl 0x4d34bd
cmp dword [esi + 0x210], ebx
ja 0x4d34c9
mov edx, dword [esi + 0x2a4]
cmp dword [edx + 0x5c], 6
jne 0x4d352a
cmp dword [esi + 0x1e8], ebx
je 0x4d34f3
mov eax, dword [esi + 0x1ec]
cmp eax, ebx
je 0x4d34f3
mov ecx, dword [esi + 0x1f0]
push ebx
push ecx
push 0x1407
push eax
call dword [sym.imp.USER32.dll_SendMessageA]
test eax, eax
je 0x4d3515
mov ecx, esi
call fcn.004d3be0
lea ecx, [esi + 0x48]
call fcn.004c5fb0
xor eax, eax
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [esi + 0x8d4]
mov dword [ebp - 0x1c], ebx
mov dword [esi + 0x1f8], eax
mov dword [esi + 0x2a0], eax
mov edx, dword [esi + 0xc]
cmp byte [edx + 0x32d], bl
je 0x4d3587
cmp byte [0x5ba96c], bl
jne 0x4d3587
cmp dword [esi + 0x214], ebx
jl 0x4d3587
jg 0x4d354f
cmp dword [esi + 0x210], ebx
jbe 0x4d3587
push str.Stop_downloading__wait_while_the_Start_btn_will_be_pressed_n
mov ecx, esi
call fcn.004f4240
mov ecx, esi
call fcn.004d3be0
lea ecx, [esi + 0x48]
call fcn.004c5fb0
mov dword [esi + 0x38], 1
mov eax, 0x7540
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov ecx, esi
call fcn.004d3770
mov edi, eax
mov ecx, esi
cmp edi, ebx
jne 0x4d35a7
call fcn.004d3d50
mov ecx, esi
call fcn.004f4f90
jmp 0x4d3200
call fcn.004d3be0
cmp dword [esi + 0x38], ebx
je 0x4d35cf
lea ecx, [esi + 0x48]
call fcn.004c5fb0
mov eax, 0x7540
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp edi, 0x753c
jne 0x4d35fa
mov esi, dword [esi + 0x1d4]
cmp esi, ebx
mov eax, esi
jne 0x4d375b
mov eax, edi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp edi, 0xffffffff
je 0x4d3758
mov eax, dword [esi + 0x21c]
mov ecx, dword [esi + 0x218]
mov edx, dword [0x5bb56c]
push eax
push ecx
lea eax, [ebp - 0xfc]
push edx
push eax
call fcn.0051d0e8
add esp, 0x10
lea ecx, [ebp - 0xfc]
push ecx
mov ecx, esi
call fcn.004f4120
xor edi, edi
cmp edi, dword [esi + 0x1fc]
jge 0x4d36da
lea edx, [edi + edi*8]
lea eax, [edi + edx*8]
mov edx, dword [esi + 0x2a4]
lea eax, [edi + eax*4]
lea ecx, [eax + eax*2]
shl ecx, 4
lea eax, [ecx + edx]
mov ecx, dword [ecx + edx + 0x54]
test ecx, ecx
je 0x4d36d4
mov ecx, dword [eax + 0x70]
mov dword [ebp - 0x14], ecx
mov ecx, dword [ecx]
cmp dword [ecx], 0
je 0x4d36d4
mov ecx, dword [eax + 0x38]
mov edx, dword [eax + 0x3c]
mov ebx, ecx
or ebx, edx
je 0x4d36d4
mov dword [ebp - 0x50], edx
mov edx, dword [eax + 0x40]
mov dword [ebp - 0x4c], edx
mov edx, dword [eax + 0x20]
mov ebx, dword [eax + 0x58]
mov dword [ebp - 0x54], ecx
mov ecx, dword [eax + 0x44]
mov dword [ebp - 0x44], edx
mov edx, dword [eax + 0x28]
mov dword [ebp - 0x48], ecx
mov ecx, dword [eax + 0x24]
mov dword [ebp - 0x3c], edx
mov edx, dword [eax + 0x30]
mov dword [ebp - 0x40], ecx
mov ecx, dword [eax + 0x2c]
mov eax, dword [eax + 0x34]
mov dword [ebp - 0x34], edx
mov edx, dword [ebp - 0x14]
mov dword [ebp - 0x5c], ebx
mov dword [ebp - 0x38], ecx
mov dword [ebp - 0x30], eax
mov eax, dword [edx]
lea ecx, [ebp - 0x5c]
push ecx
mov ecx, dword [eax]
push 0x13ef
push 0x111
push ecx
call dword [sym.imp.USER32.dll_SendMessageA]
inc edi
jmp 0x4d3637
mov edx, dword [esi + 0x218]
mov eax, dword [esi + 0x21c]
mov ecx, dword [esi + 0x210]
mov dword [ebp - 0x14], eax
mov eax, dword [esi + 0x214]
cmp edx, ecx
mov dword [ebp - 0x18], edx
jne 0x4d3703
mov edx, dword [ebp - 0x14]
cmp edx, eax
je 0x4d372b
mov edx, ecx
or edx, eax
je 0x4d372b
cmp dword [ebp - 0x14], eax
jl 0x4d3758
jg 0x4d3715
cmp dword [ebp - 0x18], ecx
jbe 0x4d3758
mov eax, 0x7570
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov ecx, esi
call fcn.004f4f90
xor eax, eax
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
or eax, 0xffffffff
mov ecx, dword [ebp - 0xc]
pop edi
pop esi
mov dword fs:[0], ecx
pop ebx
mov esp, ebp
pop ebp
ret