Function at 0x5795dc
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push ebp
mov ebp, esp
mov ecx, 0x12
push 0
push 0
dec ecx
jne 0x5795e4
push ebx
push esi
push edi
mov ebx, eax
xor eax, eax
push ebp
push 0x579a97
push dword fs:[eax]
mov dword fs:[eax], esp
mov dword [ebp - 0x2c], 1
lea edx, [ebp - 0x58]
mov eax, 0x579ab0
call fcn.0049b4d8
mov ecx, dword [ebp - 0x58]
mov edx, dword [select]
mov edx, dword [edx + 0x16c]
lea eax, [ebp - 4]
call fcn.004056ac
mov eax, dword [ebp - 4]
call fcn.004c9c68
test al, al
je 0x579a43
mov dl, 1
mov eax, dword [0x49fa90]
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.0040ae98
mov edx, dword [ebp - 0x5c]
lea ecx, [ebp - 0x30]
mov eax, ebx
call fcn.00573c20
mov eax, dword [ebp - 0x30]
mov edx, dword [eax]
call dword [edx + 0x14]
mov esi, eax
dec esi
test esi, esi
jl 0x579a3b
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 0x579a31
mov eax, dword [ebp - 8]
cmp byte [eax], 0x3b
je 0x579a31
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.0048ab7c
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.0048ab7c
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.0048ab7c
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.0048ab7c
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.0048ab7c
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.0048ab7c
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.0048ab7c
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.0048ab7c
mov edx, dword [ebp - 0x80]
lea eax, [ebp - 8]
call fcn.0040542c
cmp dword [ebp - 0xc], 0
je 0x579a2a
cmp dword [ebp - 0x20], 0
je 0x579a2a
cmp dword [ebp - 0x24], 0
je 0x579a2a
mov eax, dword [ebp - 0xc]
cmp byte [eax], 0x24
jne 0x579951
mov edi, dword [ebp - 0xc]
test edi, edi
je 0x579818
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 0x579945
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, 0x579acc
mov edx, 0x579ad8
mov eax, dword [ebp - 0x10]
call fcn.0048aec8
lea eax, [ebp - 0x18]
push eax
lea eax, [ebp - 0x88]
push eax
mov ecx, 0x579acc
mov edx, 0x579ad8
mov eax, dword [ebp - 0x18]
call fcn.0048aec8
or edx, 0xffffffff
mov eax, dword [ebp - 0x10]
call fcn.0040a9e0
mov dword [ebp - 0x44], eax
or edx, 0xffffffff
mov eax, dword [ebp - 0x18]
call fcn.0040a9e0
mov dword [ebp - 0x48], eax
or edx, 0xffffffff
mov eax, dword [ebp - 0x14]
call fcn.0040a9e0
mov dword [ebp - 0x3c], eax
or edx, 0xffffffff
mov eax, dword [ebp - 0x1c]
call fcn.0040a9e0
mov dword [ebp - 0x40], eax
mov ecx, 5
mov edx, 0x579ae4
mov eax, dword [ebp - 0x28]
call fcn.0048b068
mov byte [ebp - 0x49], al
mov eax, dword [ebp - 0x50]
mov eax, dword [eax + 8]
dec eax
test eax, eax
jl 0x579a31
inc eax
mov dword [ebp - 0x54], eax
mov dword [ebp - 0x38], 0
mov edx, dword [ebp - 0x38]
mov eax, dword [ebp - 0x50]
call fcn.0041fbf0
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.005793d8
test al, al
jne 0x579938
mov eax, dword [ebp - 0x34]
neg eax
mov dword [ebp - 0x2c], eax
jmp 0x579a31
inc dword [ebp - 0x38]
dec dword [ebp - 0x54]
jne 0x5798f8
jmp 0x579a31
mov dword [ebp - 0x2c], 0xffffffff
jmp 0x579a31
mov eax, dword [0x6c0984]
mov eax, dword [eax]
mov edx, dword [ebp - 0xc]
call fcn.00673f60
mov edi, eax
test edi, edi
je 0x579a21
lea eax, [ebp - 0x10]
push eax
lea eax, [ebp - 0x8c]
push eax
mov ecx, 0x579acc
mov edx, 0x579ad8
mov eax, dword [ebp - 0x10]
call fcn.0048aec8
lea eax, [ebp - 0x18]
push eax
lea eax, [ebp - 0x90]
push eax
mov ecx, 0x579acc
mov edx, 0x579ad8
mov eax, dword [ebp - 0x18]
call fcn.0048aec8
or edx, 0xffffffff
mov eax, dword [ebp - 0x10]
call fcn.0040a9e0
mov dword [ebp - 0x44], eax
or edx, 0xffffffff
mov eax, dword [ebp - 0x18]
call fcn.0040a9e0
mov dword [ebp - 0x48], eax
or edx, 0xffffffff
mov eax, dword [ebp - 0x14]
call fcn.0040a9e0
mov dword [ebp - 0x3c], eax
or edx, 0xffffffff
mov eax, dword [ebp - 0x1c]
call fcn.0040a9e0
mov dword [ebp - 0x40], eax
mov ecx, 5
mov edx, 0x579ae4
mov eax, dword [ebp - 0x28]
call fcn.0048b068
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.005793d8
test al, al
jne 0x579a31
mov eax, dword [ebp - 0x34]
neg eax
mov dword [ebp - 0x2c], eax
jmp 0x579a31
mov dword [ebp - 0x2c], 0xffffffff
jmp 0x579a31
mov dword [ebp - 0x2c], 0xffffffff
inc dword [ebp - 0x34]
dec esi
jne 0x579686
mov eax, dword [ebp - 0x30]
call fcn.00404430
mov eax, ebx
call fcn.00578274
mov eax, ebx
call fcn.00578120
mov eax, ebx
call fcn.0057851c
mov eax, ebx
call fcn.005783c8
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x579a9e
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