Function at 0x561840
Capabilities:
Get socket status

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x62afa8
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x9c
push ebx
push esi
push edi
lea eax, [ebp - 0xa8]
mov dword [ebp - 0x10], esp
mov esi, ecx
xor ebx, ebx
push eax
mov dword [ebp - 0x44], esi
mov dword [ebp - 4], ebx
mov dword [ebp - 0x58], 3
mov dword [ebp - 0x54], ebx
call fcn.005e7d47
lea ecx, [ebp - 0x50]
push ecx
call fcn.005e7d47
mov eax, dword [esi + 0xf4]
add esp, 8
cmp eax, ebx
jne 0x5618a2
cmp dword [esi + 0x104], ebx
je 0x5618b2
cmp dword [esi + 0x154], ebx
je 0x5618bb
cmp dword [esi + 0x158], ebx
je 0x5618bb
mov dword [ebp - 0x18], 1
jmp 0x5618be
mov dword [ebp - 0x18], ebx
mov ecx, esi
call fcn.005a7f70
mov ecx, esi
call fcn.005a89d0
mov ecx, esi
call fcn.005a76d0
mov dword [ebp - 0x38], ebx
mov dword [ebp - 0x34], ebx
mov eax, dword [esi + 0x1c]
mov ecx, esi
cmp eax, ebx
je 0x561955
call fcn.005625b0
lea ecx, [esi + 0x28]
call fcn.0054a920
mov edx, dword [esi + 0x1b8]
mov eax, dword [esi + 0x1bc]
mov ecx, dword [esi + 0x1c0]
mov dword [ebp - 0x90], edx
mov edx, dword [esi + 0x1c4]
mov dword [ebp - 0x8c], eax
mov dword [ebp - 0x88], ecx
mov ecx, dword [esi + 0x10]
lea eax, [ebp - 0x90]
mov dword [ebp - 0x84], edx
mov dword [ebp - 0x80], ebx
mov edx, dword [ecx]
push eax
push 0x1471
push 0x111
push edx
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
call fcn.005a7200
test al, al
mov byte [ebp - 0x20], al
je 0x56197f
lea eax, [ebp - 0x6c]
push eax
call fcn.005e7d47
mov ecx, dword [esi + 0x1c0]
mov edx, dword [esi + 0x1c4]
add esp, 4
mov dword [ebp - 0x38], ecx
mov dword [ebp - 0x34], edx
lea eax, [ebp - 0x58]
lea ecx, [esi + 0x658]
push eax
lea edx, [esi + 0x454]
push ecx
lea eax, [esi + 0x250]
push edx
push eax
push ebx
call sub.WS2_32.dll_select
mov edi, eax
mov eax, dword [esi + 0x1c]
cmp eax, ebx
je 0x5619cc
mov ecx, esi
call fcn.005625b0
lea ecx, [esi + 0x28]
call fcn.0054a920
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 + 0x1c0]
mov ecx, dword [esi + 0x1c4]
or eax, ecx
jne 0x561a11
lea ecx, [ebp - 0x50]
push ecx
call fcn.005e7d47
mov edx, dword [ebp - 0x50]
mov ecx, dword [ebp - 0xa8]
sub edx, ecx
add esp, 4
cmp edx, 0x12c
jle 0x561a11
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 0x561a76
cmp edi, ebx
je 0x561a76
xor edi, edi
cmp edi, dword [esi + 0x1a8]
jge 0x561aab
mov eax, edi
mov edx, dword [esi + 0x24c]
shl eax, 5
sub eax, edi
lea eax, [eax + eax*2]
lea eax, [edi + eax*2]
lea ecx, [eax + eax*4]
shl ecx, 4
add ecx, edx
cmp dword [ecx + 0x84], ebx
je 0x561a73
cmp dword [esi + 0x1c], ebx
je 0x561a6e
lea ecx, [esi + 0x28]
call fcn.0054a920
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.0055da70
inc edi
jmp 0x561a1c
xor edi, edi
cmp edi, dword [esi + 0x1a8]
jge 0x561aab
mov eax, edi
mov edx, dword [esi + 0x24c]
shl eax, 5
sub eax, edi
lea eax, [eax + eax*2]
lea eax, [edi + eax*2]
lea ecx, [eax + eax*4]
shl ecx, 4
add ecx, edx
cmp dword [ecx + 0x84], ebx
je 0x561aa8
call fcn.0055d1e0
inc edi
jmp 0x561a78
mov eax, dword [ebp - 0x20]
mov ecx, esi
push eax
push ebx
call fcn.005a77a0
lea ecx, [ebp - 0x9c]
push ecx
call fcn.005e7d47
mov eax, dword [ebp - 0x9c]
mov ecx, dword [ebp - 0x50]
sub eax, ecx
mov ecx, dword [ebp - 0x98]
and ecx, 0xffff
add esp, 4
lea eax, [eax + eax*4]
lea eax, [eax + eax*4]
lea edx, [eax + eax*4]
mov eax, dword [ebp - 0x4c]
shl edx, 3
and eax, 0xffff
sub edx, eax
add edx, ecx
cmp edx, 0xfa
jl 0x561b88
lea edx, [ebp - 0x50]
push edx
call fcn.005e7d47
add esp, 4
xor ebx, ebx
cmp ebx, dword [esi + 0x1a8]
jge 0x561b88
mov eax, ebx
mov edx, dword [esi + 0x24c]
shl eax, 5
sub eax, ebx
lea eax, [eax + eax*2]
lea eax, [ebx + eax*2]
lea ecx, [eax + eax*4]
shl ecx, 4
mov eax, dword [ecx + edx + 0x84]
lea edi, [ecx + edx]
test eax, eax
je 0x561b85
mov eax, dword [edi + 0xa0]
mov ecx, dword [eax]
cmp dword [ecx], 0
je 0x561b85
mov edx, dword [edi + 0x68]
mov eax, dword [edi + 0x6c]
or edx, eax
je 0x561b85
lea eax, [edi + 0x3e8]
mov ecx, edi
push eax
call fcn.00550820
lea eax, [edi + 0x3e8]
push eax
mov eax, dword [edi + 0xa0]
push 0x13ef
push 0x111
mov ecx, dword [eax]
mov edx, dword [ecx]
push edx
call dword [sym.imp.USER32.dll_PostMessageA]
inc ebx
jmp 0x561b0f
mov eax, dword [esi + 0x1c]
test eax, eax
je 0x561bb4
mov ecx, esi
call fcn.005625b0
lea ecx, [esi + 0x28]
call fcn.0054a920
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 [ebp - 0x18]
test eax, eax
je 0x561c4c
mov eax, dword [esi + 0x1bc]
test eax, eax
jg 0x561be4
jl 0x561bd5
mov eax, dword [esi + 0x1b8]
test eax, eax
ja 0x561be4
mov eax, dword [esi + 0x24c]
cmp dword [eax + 0x8c], 6
jne 0x561c4c
mov eax, dword [esi + 0x154]
test eax, eax
je 0x561c11
mov eax, dword [esi + 0x158]
test eax, eax
je 0x561c11
mov ecx, dword [esi + 0x15c]
push 0
push ecx
push 0x1407
push eax
call dword [sym.imp.USER32.dll_SendMessageA]
test eax, eax
je 0x561c33
mov ecx, esi
call fcn.005625b0
lea ecx, [esi + 0x28]
call fcn.0054a920
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 + 0x87c]
mov dword [ebp - 0x18], 0
mov dword [esi + 0x1a4], eax
mov dword [esi + 0x248], eax
mov edx, dword [esi + 0xc]
mov al, byte [edx + 0x31e]
test al, al
je 0x561cb0
mov al, byte [0x6d13f4]
test al, al
jne 0x561cb0
mov eax, dword [esi + 0x1bc]
test eax, eax
jl 0x561cb0
jg 0x561c78
mov eax, dword [esi + 0x1b8]
test eax, eax
jbe 0x561cb0
push str.Stop_downloading__wait_while_the_Start_btn_will_be_pressed_n
mov ecx, esi
call fcn.005a7550
mov ecx, esi
call fcn.005625b0
lea ecx, [esi + 0x28]
call fcn.0054a920
mov dword [esi + 0x1c], 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 al, byte [ebp - 0x20]
test al, al
je 0x561ec6
mov ecx, dword [esi + 0x1c4]
mov eax, dword [esi + 0x1c0]
test ecx, ecx
jl 0x561ec6
jg 0x561cdc
cmp eax, 0x400
jbe 0x561ec6
mov ecx, esi
call fcn.005a71c0
mov dword [ebp - 0x28], eax
lea eax, [ebp - 0x78]
push eax
mov ebx, edx
call fcn.005e7d47
mov eax, dword [esi + 0x1c0]
mov edi, dword [ebp - 0x38]
mov ecx, dword [esi + 0x1c4]
mov edx, dword [ebp - 0x34]
add esp, 4
sub eax, edi
sbb ecx, edx
mov dword [ebp - 0x40], eax
mov dword [ebp - 0x3c], ecx
js 0x561ec6
jg 0x561d20
test eax, eax
jbe 0x561ec6
mov eax, dword [ebp - 0x78]
mov edx, dword [ebp - 0x6c]
sub eax, edx
mov ecx, dword [ebp - 0x68]
mov edx, dword [ebp - 0x74]
and ecx, 0xffff
lea eax, [eax + eax*4]
and edx, 0xffff
lea eax, [eax + eax*4]
lea eax, [eax + eax*4]
shl eax, 3
sub eax, ecx
add eax, edx
mov dword [ebp - 0x1c], eax
jne 0x561d56
mov dword [ebp - 0x1c], 1
fild qword [ebp - 0x40]
fmul dword [0x635a28]
fidiv dword [ebp - 0x1c]
call fcn.005e6974
mov edi, edx
mov ecx, eax
cmp edi, ebx
jl 0x561ec6
jg 0x561d7e
cmp ecx, dword [ebp - 0x28]
jbe 0x561ec6
mov edx, dword [ebp - 0x28]
mov eax, dword [ebp - 0x1c]
sub ecx, edx
cdq
sbb edi, ebx
push edx
push eax
push edi
push ecx
call fcn.005e8c50
mov ecx, dword [ebp - 0x28]
push ebx
push ecx
push edx
push eax
call fcn.005e8260
mov edi, eax
mov eax, dword [esi + 0x1c8]
cdq
mov dword [ebp - 0x2c], edx
mov edx, dword [ebp - 0x28]
push 0
push 2
push ebx
push edx
mov dword [ebp - 0x30], eax
call fcn.005e8260
cmp dword [ebp - 0x2c], edx
jg 0x561ddc
jl 0x561dc7
cmp dword [ebp - 0x30], eax
jae 0x561ddc
mov eax, 0x66666667
imul edi
sar edx, 3
mov eax, edx
shr eax, 0x1f
add edx, eax
mov edi, edx
jmp 0x561e0a
mov ecx, dword [ebp - 0x28]
push 0
push 9
push ebx
push ecx
call fcn.005e8c50
push 0
push 0xa
push edx
push eax
call fcn.005e8260
cmp dword [ebp - 0x2c], edx
jg 0x561e0a
jl 0x561e01
cmp dword [ebp - 0x30], eax
jae 0x561e0a
mov eax, edi
cdq
sub eax, edx
sar eax, 1
mov edi, eax
cmp edi, 0x2ee0
jle 0x561e19
mov edi, 0x2ee0
jmp 0x561e21
test edi, edi
jle 0x561ec6
mov eax, dword [esi + 0x880]
cmp eax, 0xffffffff
je 0x561ebf
lea ecx, [esi + 0x250]
lea ebx, [esi + 0x658]
mov dword [esi + 0x454], 0
mov dword [ecx], 0
mov dword [ebx], 0
mov dword [esi + 0x254], eax
mov eax, dword [ecx]
inc eax
mov dword [ecx], eax
mov eax, dword [ebx]
cmp eax, 0x80
jae 0x561e78
mov edx, dword [esi + 0x880]
mov dword [esi + eax*4 + 0x65c], edx
mov eax, dword [ebx]
inc eax
mov dword [ebx], eax
mov eax, 0x10624dd3
imul edi
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
mov dword [ebp - 0x60], edx
lea eax, [edx + edx*4]
lea eax, [eax + eax*4]
lea edx, [eax + eax*4]
shl edx, 3
sub edi, edx
lea edx, [ebp - 0x60]
push edx
push ebx
lea eax, [edi + edi*4]
lea eax, [eax + eax*4]
lea eax, [eax + eax*4]
shl eax, 3
mov dword [ebp - 0x5c], eax
lea eax, [esi + 0x454]
push eax
push ecx
push 0
call sub.WS2_32.dll_select
jmp 0x561ec6
push edi
call dword [sym.imp.KERNEL32.dll_Sleep]
mov ecx, esi
call fcn.005620b0
mov edi, eax
mov ecx, esi
test edi, edi
jne 0x561ee8
call fcn.00562720
mov ecx, esi
call fcn.005a8a00
xor ebx, ebx
jmp 0x5618d9
call fcn.005625b0
mov eax, dword [esi + 0x1c]
test eax, eax
je 0x561f12
lea ecx, [esi + 0x28]
call fcn.0054a920
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 0x561f3d
mov esi, dword [esi + 0x140]
test esi, esi
mov eax, esi
jne 0x562066
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 0x562063
mov eax, dword [0x6cc708]
mov dword [ebp - 0x14], eax
mov ecx, dword [esi + 0x1c4]
mov edx, dword [esi + 0x1c0]
mov eax, dword [0x6d24ac]
push ecx
push edx
lea ecx, [ebp - 0x14]
push eax
push ecx
mov byte [ebp - 4], 1
call fcn.005fb90b
mov edx, dword [ebp - 0x14]
add esp, 0x10
mov ecx, esi
push 1
push edx
call fcn.005a7400
xor ebx, ebx
cmp ebx, dword [esi + 0x1a8]
jge 0x561ffa
mov eax, ebx
mov edx, dword [esi + 0x24c]
shl eax, 5
sub eax, ebx
lea eax, [eax + eax*2]
lea eax, [ebx + eax*2]
lea ecx, [eax + eax*4]
shl ecx, 4
mov eax, dword [ecx + edx + 0x84]
lea edi, [ecx + edx]
test eax, eax
je 0x561ff7
mov eax, dword [edi + 0xa0]
mov ecx, dword [eax]
cmp dword [ecx], 0
je 0x561ff7
mov edx, dword [edi + 0x68]
mov eax, dword [edi + 0x6c]
or edx, eax
je 0x561ff7
lea eax, [edi + 0x3e8]
mov ecx, edi
push eax
call fcn.00550820
lea eax, [edi + 0x3e8]
push eax
mov eax, dword [edi + 0xa0]
push 0x13ef
push 0x111
mov ecx, dword [eax]
mov edx, dword [ecx]
push edx
call dword [sym.imp.USER32.dll_PostMessageA]
inc ebx
jmp 0x561f81
mov eax, dword [esi + 0x1c4]
mov edx, dword [esi + 0x1c0]
mov ecx, dword [esi + 0x1bc]
mov dword [ebp - 0x3c], eax
mov eax, dword [esi + 0x1b8]
cmp edx, eax
jne 0x562022
mov edi, dword [ebp - 0x3c]
mov ebx, ecx
cmp edi, ebx
je 0x562077
mov edi, eax
or edi, ecx
je 0x562077
mov esi, dword [ebp - 0x3c]
cmp esi, ecx
jl 0x562057
jg 0x562035
cmp edx, eax
jbe 0x562057
lea ecx, [ebp - 0x14]
mov byte [ebp - 4], 0
call fcn.00602ad6
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
lea ecx, [ebp - 0x14]
mov byte [ebp - 4], 0
call fcn.00602ad6
or eax, 0xffffffff
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.005a8a00
lea ecx, [ebp - 0x14]
mov byte [ebp - 4], 0
call fcn.00602ad6
mov ecx, dword [ebp - 0xc]
pop edi
pop esi
xor eax, eax
mov dword fs:[0], ecx
pop ebx
mov esp, ebp
pop ebp
ret