Function at 0x56b05c
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push ebp
mov ebp, esp
mov ecx, 0x12
push 0
push 0
dec ecx
jne 0x56b064
push ebx
push esi
push edi
mov ebx, eax
xor eax, eax
push ebp
push 0x56b517
push dword fs:[eax]
mov dword fs:[eax], esp
mov dword [ebp - 0x2c], 1
lea edx, [ebp - 0x58]
mov eax, 0x56b530
call fcn.004f2300
mov ecx, dword [ebp - 0x58]
mov edx, dword [setsockopt]
mov edx, dword [edx + 0x16c]
lea eax, [ebp - 4]
call fcn.004056ac
mov eax, dword [ebp - 4]
call fcn.0066b3d4
test al, al
je 0x56b4c3
mov dl, 1
mov eax, dword [0x6411fc]
call fcn.00404400
mov dword [ebp - 0x30], eax
mov edx, dword [ebp - 4]
mov eax, dword [ebp - 0x30]
mov ecx, dword [eax]
call dword [ecx + 0x68]
lea edx, [ebp - 0x5c]
mov eax, dword [ebp - 4]
call fcn.0040aea4
mov edx, dword [ebp - 0x5c]
lea ecx, [ebp - 0x30]
mov eax, ebx
call fcn.005656a0
mov eax, dword [ebp - 0x30]
mov edx, dword [eax]
call dword [edx + 0x14]
mov esi, eax
dec esi
test esi, esi
jl 0x56b4bb
inc esi
mov dword [ebp - 0x34], 0
lea ecx, [ebp - 8]
mov edx, dword [ebp - 0x34]
mov eax, dword [ebp - 0x30]
mov edi, dword [eax]
call dword [edi + 0xc]
cmp dword [ebp - 8], 0
je 0x56b4b1
mov eax, dword [ebp - 8]
cmp byte [eax], 0x3b
je 0x56b4b1
push 1
lea eax, [ebp - 0x60]
push eax
mov byte [ebp - 0x64], 0x20
mov byte [ebp - 0x63], 9
lea ecx, [ebp - 0x64]
lea edx, [ebp - 0xc]
mov eax, dword [ebp - 8]
call fcn.004e374c
mov edx, dword [ebp - 0x60]
lea eax, [ebp - 8]
call fcn.0040542c
push 1
lea eax, [ebp - 0x68]
push eax
mov byte [ebp - 0x64], 0x20
mov byte [ebp - 0x63], 9
lea ecx, [ebp - 0x64]
lea edx, [ebp - 0x10]
mov eax, dword [ebp - 8]
call fcn.004e374c
mov edx, dword [ebp - 0x68]
lea eax, [ebp - 8]
call fcn.0040542c
push 1
lea eax, [ebp - 0x6c]
push eax
mov byte [ebp - 0x64], 0x20
mov byte [ebp - 0x63], 9
lea ecx, [ebp - 0x64]
lea edx, [ebp - 0x14]
mov eax, dword [ebp - 8]
call fcn.004e374c
mov edx, dword [ebp - 0x6c]
lea eax, [ebp - 8]
call fcn.0040542c
push 1
lea eax, [ebp - 0x70]
push eax
mov byte [ebp - 0x64], 0x20
mov byte [ebp - 0x63], 9
lea ecx, [ebp - 0x64]
lea edx, [ebp - 0x18]
mov eax, dword [ebp - 8]
call fcn.004e374c
mov edx, dword [ebp - 0x70]
lea eax, [ebp - 8]
call fcn.0040542c
push 1
lea eax, [ebp - 0x74]
push eax
mov byte [ebp - 0x64], 0x20
mov byte [ebp - 0x63], 9
lea ecx, [ebp - 0x64]
lea edx, [ebp - 0x1c]
mov eax, dword [ebp - 8]
call fcn.004e374c
mov edx, dword [ebp - 0x74]
lea eax, [ebp - 8]
call fcn.0040542c
push 1
lea eax, [ebp - 0x78]
push eax
mov byte [ebp - 0x64], 0x20
mov byte [ebp - 0x63], 9
lea ecx, [ebp - 0x64]
lea edx, [ebp - 0x20]
mov eax, dword [ebp - 8]
call fcn.004e374c
mov edx, dword [ebp - 0x78]
lea eax, [ebp - 8]
call fcn.0040542c
push 1
lea eax, [ebp - 0x7c]
push eax
mov byte [ebp - 0x64], 0x20
mov byte [ebp - 0x63], 9
lea ecx, [ebp - 0x64]
lea edx, [ebp - 0x24]
mov eax, dword [ebp - 8]
call fcn.004e374c
mov edx, dword [ebp - 0x7c]
lea eax, [ebp - 8]
call fcn.0040542c
push 1
lea eax, [ebp - 0x80]
push eax
mov byte [ebp - 0x64], 0x20
mov byte [ebp - 0x63], 9
lea ecx, [ebp - 0x64]
lea edx, [ebp - 0x28]
mov eax, dword [ebp - 8]
call fcn.004e374c
mov edx, dword [ebp - 0x80]
lea eax, [ebp - 8]
call fcn.0040542c
cmp dword [ebp - 0xc], 0
je 0x56b4aa
cmp dword [ebp - 0x20], 0
je 0x56b4aa
cmp dword [ebp - 0x24], 0
je 0x56b4aa
mov eax, dword [ebp - 0xc]
cmp byte [eax], 0x24
jne 0x56b3d1
mov edi, dword [ebp - 0xc]
test edi, edi
je 0x56b298
sub edi, 4
mov edi, dword [edi]
lea eax, [ebp - 0xc]
push eax
mov ecx, edi
dec ecx
mov edx, 2
mov eax, dword [ebp - 0xc]
call fcn.0040588c
mov eax, dword [0x6c0ee4]
mov eax, dword [eax]
mov edx, dword [ebp - 0xc]
mov ecx, dword [eax]
call dword [ecx + 0x54]
mov edi, eax
cmp edi, 0xffffffff
je 0x56b3c5
mov eax, dword [0x6c0ee4]
mov eax, dword [eax]
mov edx, edi
mov ecx, dword [eax]
call dword [ecx + 0x18]
mov dword [ebp - 0x50], eax
lea eax, [ebp - 0x10]
push eax
lea eax, [ebp - 0x84]
push eax
mov ecx, 0x56b54c
mov edx, 0x56b558
mov eax, dword [ebp - 0x10]
call fcn.004e3a98
lea eax, [ebp - 0x18]
push eax
lea eax, [ebp - 0x88]
push eax
mov ecx, 0x56b54c
mov edx, 0x56b558
mov eax, dword [ebp - 0x18]
call fcn.004e3a98
or edx, 0xffffffff
mov eax, dword [ebp - 0x10]
call fcn.0040a9ec
mov dword [ebp - 0x44], eax
or edx, 0xffffffff
mov eax, dword [ebp - 0x18]
call fcn.0040a9ec
mov dword [ebp - 0x48], eax
or edx, 0xffffffff
mov eax, dword [ebp - 0x14]
call fcn.0040a9ec
mov dword [ebp - 0x3c], eax
or edx, 0xffffffff
mov eax, dword [ebp - 0x1c]
call fcn.0040a9ec
mov dword [ebp - 0x40], eax
mov ecx, 5
mov edx, 0x56b564
mov eax, dword [ebp - 0x28]
call fcn.004e3c38
mov byte [ebp - 0x49], al
mov eax, dword [ebp - 0x50]
mov eax, dword [eax + 8]
dec eax
test eax, eax
jl 0x56b4b1
inc eax
mov dword [ebp - 0x54], eax
mov dword [ebp - 0x38], 0
mov edx, dword [ebp - 0x38]
mov eax, dword [ebp - 0x50]
call fcn.0041fbfc
mov edi, eax
mov eax, dword [ebp - 0x48]
push eax
mov eax, dword [ebp - 0x40]
push eax
mov eax, dword [ebp - 0x20]
push eax
mov eax, dword [ebp - 0x24]
push eax
movzx eax, byte [ebp - 0x49]
push eax
mov ecx, dword [ebp - 0x3c]
mov edx, dword [ebp - 0x44]
mov eax, edi
call fcn.0056ae58
test al, al
jne 0x56b3b8
mov eax, dword [ebp - 0x34]
neg eax
mov dword [ebp - 0x2c], eax
jmp 0x56b4b1
inc dword [ebp - 0x38]
dec dword [ebp - 0x54]
jne 0x56b378
jmp 0x56b4b1
mov dword [ebp - 0x2c], 0xffffffff
jmp 0x56b4b1
mov eax, dword [0x6c0984]
mov eax, dword [eax]
mov edx, dword [ebp - 0xc]
call fcn.0066e3c8
mov edi, eax
test edi, edi
je 0x56b4a1
lea eax, [ebp - 0x10]
push eax
lea eax, [ebp - 0x8c]
push eax
mov ecx, 0x56b54c
mov edx, 0x56b558
mov eax, dword [ebp - 0x10]
call fcn.004e3a98
lea eax, [ebp - 0x18]
push eax
lea eax, [ebp - 0x90]
push eax
mov ecx, 0x56b54c
mov edx, 0x56b558
mov eax, dword [ebp - 0x18]
call fcn.004e3a98
or edx, 0xffffffff
mov eax, dword [ebp - 0x10]
call fcn.0040a9ec
mov dword [ebp - 0x44], eax
or edx, 0xffffffff
mov eax, dword [ebp - 0x18]
call fcn.0040a9ec
mov dword [ebp - 0x48], eax
or edx, 0xffffffff
mov eax, dword [ebp - 0x14]
call fcn.0040a9ec
mov dword [ebp - 0x3c], eax
or edx, 0xffffffff
mov eax, dword [ebp - 0x1c]
call fcn.0040a9ec
mov dword [ebp - 0x40], eax
mov ecx, 5
mov edx, 0x56b564
mov eax, dword [ebp - 0x28]
call fcn.004e3c38
mov byte [ebp - 0x49], al
mov eax, dword [ebp - 0x48]
push eax
mov eax, dword [ebp - 0x40]
push eax
mov eax, dword [ebp - 0x20]
push eax
mov eax, dword [ebp - 0x24]
push eax
movzx eax, byte [ebp - 0x49]
push eax
mov ecx, dword [ebp - 0x3c]
mov edx, dword [ebp - 0x44]
mov eax, edi
call fcn.0056ae58
test al, al
jne 0x56b4b1
mov eax, dword [ebp - 0x34]
neg eax
mov dword [ebp - 0x2c], eax
jmp 0x56b4b1
mov dword [ebp - 0x2c], 0xffffffff
jmp 0x56b4b1
mov dword [ebp - 0x2c], 0xffffffff
inc dword [ebp - 0x34]
dec esi
jne 0x56b106
mov eax, dword [ebp - 0x30]
call fcn.00404430
mov eax, ebx
call fcn.00569cf4
mov eax, ebx
call fcn.00569ba0
mov eax, ebx
call fcn.00569f9c
mov eax, ebx
call fcn.00569e48
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x56b51e
lea eax, [ebp - 0x90]
mov edx, 0xb
call fcn.004053b8
lea eax, [ebp - 0x60]
mov edx, 3
call fcn.004053b8
lea eax, [ebp - 0x28]
mov edx, 0xa
call fcn.004053b8
ret