Function at 0x411110
Capabilities:
Read file on windows

Disassembly:
push ecx
call fcn.00410bd0
push str.usage:_vncviewer__options___hostname__:_display___n
call fcn.0044816d
push 0x46b7f8
call fcn.0044816d
push str.___help_________________________________
call fcn.0044816d
push str.___config__file_________________________
call fcn.0044816d
push str.___console______________________________
call fcn.0044816d
push str.___setting__value______________________
call fcn.0044816d
push 0x46b630
call fcn.0044816d
push 0x46b620
call fcn.0044816d
push 0x4f
call fcn.00443820
push 0x46b60c
call fcn.0044816d
call fcn.00443570
push 0x46b5fc
call fcn.0044816d
add esp, 0x2c
push 0xa
push 0x4f
call fcn.00442980
mov ecx, eax
call fcn.004422e0
push 0x46b5d8
call fcn.0044816d
add esp, 4
call fcn.00448609
push 0x47d488
lea eax, [esp + 4]
push eax
mov dword [esp + 8], 1
call fcn.0044777e
int3
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x463e8b
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x7f0
push ebx
mov ebx, dword [ebp + 8]
push esi
push edi
mov edi, dword [ebp + 0xc]
mov dword [ebp - 0x10], esp
mov esi, 1
cmp esi, ebx
mov dword [ebp - 0x18], esi
jge 0x41162e
mov eax, dword [edi + esi*4]
push str._console
push eax
mov dword [ebp - 4], 0
call fcn.0044860e
add esp, 8
test eax, eax
jne 0x411178
call fcn.00410bd0
mov ebx, dword [ebp + 8]
mov dword [ebp - 4], 0xffffffff
inc esi
jmp 0x41113f
mov ecx, dword [edi + esi*4]
push str._config
push ecx
call fcn.0044860e
add esp, 8
test eax, eax
je 0x4111a2
mov edx, dword [edi + esi*4]
push 0x46b950
push edx
call fcn.0044860e
add esp, 8
test eax, eax
jne 0x4111de
lea eax, [ebx - 1]
cmp esi, eax
jge 0x4111de
mov ecx, dword [edi + esi*4 + 4]
inc esi
push ecx
mov byte [0x487e89], 1
mov dword [ebp - 0x18], esi
call fcn.00405560
add esp, 4
test al, al
je 0x41161e
push 0x47d488
lea edx, [ebp - 0x44]
push edx
mov dword [ebp - 0x44], 0
call fcn.0044777e
mov eax, dword [edi + esi*4]
push str._listen
push eax
call fcn.0044860e
add esp, 8
test eax, eax
jne 0x41128b
mov ebx, dword [ebp + 8]
dec ebx
cmp esi, ebx
mov byte [ebp - 4], 1
mov dword [ebp - 0x14], 0x157c
jge 0x41122d
mov ecx, dword [edi + esi*4 + 4]
lea edi, [edi + esi*4 + 4]
push ecx
call fcn.00447ee0
add esp, 4
test eax, eax
je 0x41122d
mov edx, dword [edi]
push edx
call fcn.00447ee0
add esp, 4
mov dword [ebp - 0x14], eax
inc esi
cmp ebx, esi
jle 0x411237
jmp 0x410c90
mov eax, dword [ebp - 0x14]
mov byte [0x487e89], 1
mov dword [ebp - 0x30], 0x46b858
mov dword [ebp - 0x2c], eax
lea ecx, [ebp - 0x30]
mov byte [ebp - 4], 2
call fcn.00410ec0
mov dword [ebp - 0x30], 0x4696a0
xor eax, eax
push 0x47d488
lea edx, [ebp - 0x38]
push edx
mov dword [ebp - 4], eax
mov dword [ebp - 0x38], eax
call fcn.0044777e
mov ecx, dword [ebp - 0x4c]
push ecx
push 0x487e8c
call fcn.004048e0
add esp, 8
mov eax, 0x41125e
ret
mov eax, dword [edi + esi*4]
push str._sockpipe
push eax
call fcn.0044860e
add esp, 8
test eax, eax
jne 0x411463
dec ebx
cmp esi, ebx
jge 0x4112ae
jmp 0x410c90
xor esi, esi
mov byte [0x487e89], 1
mov dword [ebp - 0x20], esi
mov edi, dword [sym.imp.USER32.dll_GetMessageA]
mov ebx, dword [sym.imp.USER32.dll_DispatchMessageA]
mov byte [ebp - 4], 4
lea ebx, [ebx]
push 0
push 0
push 0
lea ecx, [ebp - 0x78]
push ecx
call edi
test eax, eax
jle 0x4112ef
cmp dword [ebp - 0x74], 0x400
jne 0x41134c
mov esi, dword [ebp - 0x6c]
mov dword [ebp - 0x20], esi
xor edi, edi
push edi
lea eax, [ebp - 0x14]
push eax
push 0x174
lea ecx, [ebp - 0x4f4]
push ecx
mov bl, 5
push esi
mov byte [ebp - 4], bl
mov dword [ebp - 0x14], edi
call dword [sym.imp.KERNEL32.dll_ReadFile]
test eax, eax
jne 0x411357
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push 0x46b93c
lea ecx, [ebp - 0x5f8]
call fcn.00443bf0
push 0x47c164
lea edx, [ebp - 0x380]
mov esi, eax
mov ecx, 0x41
lea edi, [ebp - 0x380]
push edx
rep movsd dword es:[edi], dword [esi]
call fcn.0044777e
lea edx, [ebp - 0x78]
push edx
call ebx
jmp 0x4112d0
push str.read_socket_info
push 0x487e8c
call fcn.004014b0
mov eax, dword [ebp - 0x14]
add esp, 8
cmp eax, 0x174
je 0x4113a3
push str.short_read
lea ecx, [ebp - 0x7fc]
call fcn.004012a0
mov esi, eax
push 0x47bc3c
lea eax, [ebp - 0x178]
mov ecx, 0x40
lea edi, [ebp - 0x178]
push eax
rep movsd dword es:[edi], dword [esi]
call fcn.0044777e
call fcn.00411bc0
push edi
push edi
lea ecx, [ebp - 0x4f4]
push ecx
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0xffffffffffffffff
call dword [sym.imp.WS2_32.dll_WSASocketA]
mov esi, eax
cmp esi, 0xffffffff
jne 0x4113fb
call dword [sym.imp.WS2_32.dll_WSAGetLastError]
push eax
push str.WSASocket
lea ecx, [ebp - 0x6fc]
call fcn.00443bf0
push 0x47c164
lea edx, [ebp - 0x27c]
mov esi, eax
mov ecx, 0x41
lea edi, [ebp - 0x27c]
push edx
rep movsd dword es:[edi], dword [esi]
call fcn.0044777e
push 0x20
call fcn.00447245
mov ecx, eax
add esp, 4
mov dword [ebp - 0x48], ecx
cmp ecx, edi
mov byte [ebp - 4], 6
je 0x41141e
push edi
push edi
push 1
push esi
call fcn.004125c0
jmp 0x411420
xor eax, eax
push eax
mov byte [ebp - 4], bl
call fcn.00405620
add esp, 4
push 0x47d488
lea eax, [ebp - 0x40]
push eax
mov dword [ebp - 0x40], edi
call fcn.0044777e
mov ecx, dword [ebp - 0x50]
push ecx
push 0x487e8c
call fcn.004048e0
add esp, 8
push 0x47d488
lea edx, [ebp - 0x24]
push edx
mov dword [ebp - 0x24], 1
call fcn.0044777e
mov eax, dword [edi + esi*4]
push str._help
push eax
call fcn.0044860e
add esp, 8
test eax, eax
je 0x4112a9
mov ecx, dword [edi + esi*4]
push str.__help
push ecx
call fcn.0044860e
add esp, 8
test eax, eax
je 0x4112a9
mov edx, dword [edi + esi*4]
push 0x46b8fc
push edx
call fcn.0044860e
add esp, 8
test eax, eax
je 0x4112a9
mov eax, dword [edi + esi*4]
push 0x46b8f8
push eax
call fcn.0044860e
add esp, 8
test eax, eax
je 0x4112a9
mov ecx, dword [edi + esi*4]
push 0
push ecx
call fcn.00410bb0
add esp, 8
test al, al
jne 0x411621
mov eax, dword [edi + esi*4]
cmp byte [eax], 0x2d
jne 0x411516
mov ecx, dword [ebp + 8]
lea ebx, [esi + 1]
cmp ebx, ecx
jge 0x411516
mov edx, dword [edi + esi*4 + 4]
push 0
push edx
inc eax
push eax
call fcn.00410b90
add esp, 0xc
test al, al
je 0x411516
mov esi, ebx
mov ebx, dword [ebp + 8]
mov dword [ebp - 4], 0xffffffff
inc esi
jmp 0x41113f
mov eax, dword [edi + esi*4]
mov cl, byte [eax]
cmp cl, 0x2d
je 0x41158d
cmp cl, 0x2f
je 0x41158d
push 0x5c
push eax
call fcn.00410a60
add esp, 8
test al, al
mov byte [0x487e89], 1
je 0x411564
mov eax, dword [edi + esi*4]
push eax
call fcn.00405560
add esp, 4
test al, al
je 0x41161e
push 0x47d488
lea ecx, [ebp - 0x28]
push ecx
mov dword [ebp - 0x28], 0
call fcn.0044777e
mov edx, dword [edi + esi*4]
push edx
call fcn.004054f0
add esp, 4
test al, al
je 0x41161e
push 0x47d488
lea eax, [ebp - 0x34]
push eax
mov dword [ebp - 0x34], 0
call fcn.0044777e
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x411590
sub eax, edx
mov edx, eax
mov eax, 0x46b8b0
lea ebx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4115a3
sub eax, ebx
lea ecx, [eax + edx + 1]
push ecx
lea ecx, [ebp - 0x1c]
call fcn.00401230
mov edx, dword [edi + esi*4]
mov eax, dword [ebp - 0x1c]
push edx
push 0x46b8b0
push eax
call fcn.00447d0e
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x58], eax
mov byte [ebp - 0x54], 0
push 0
push 0x10
push eax
push 0
mov byte [ebp - 4], 9
call fcn.00404990
add esp, 0x1c
push 0x47d488
lea ecx, [ebp - 0x3c]
push ecx
mov byte [ebp - 4], 8
mov dword [ebp - 0x3c], 1
call fcn.0044777e
mov edx, dword [ebp - 0x5c]
push edx
push 0x487e8c
call fcn.004048e0
add esp, 8
mov eax, 0x411618
ret
mov ebx, dword [ebp + 8]
mov dword [ebp - 4], 0xffffffff
inc esi
jmp 0x41113f
mov ecx, dword [ebp - 0xc]
pop edi
pop esi
mov dword fs:[0], ecx
pop ebx
mov esp, ebp
pop ebp
ret