Function at 0x401831
Capabilities:
Read file on windows

Disassembly:
push ebp
push ebx
push edi
push esi
mov eax, 0x1010
call fcn.0046fb20
mov eax, dword [0x4b6078]
mov esi, dword [esp + 0x1024]
mov ebp, dword [esp + 0x1030]
mov ebx, dword [esp + 0x102c]
xor eax, esp
mov dword [esp + 0x100c], eax
cmp byte [esi], 0x2d
jne 0x401d30
mov edi, dword [esp + 0x1028]
push str._load
push esi
call fcn.0047eec0
add esp, 8
test eax, eax
je 0x401db7
push str._ssh
push esi
call fcn.0047eec0
add esp, 8
test eax, eax
je 0x401df4
push str._telnet
push esi
call fcn.0047eec0
add esp, 8
test eax, eax
je 0x401e56
push str._rlogin
push esi
call fcn.0047eec0
add esp, 8
test eax, eax
je 0x401f27
push str._raw
push esi
call fcn.0047eec0
add esp, 8
xor edi, edi
test eax, eax
je 0x401f74
push str._serial
push esi
call fcn.0047eec0
add esp, 8
test eax, eax
je 0x402038
push 0x49e629
push esi
call fcn.0047eec0
add esp, 8
test eax, eax
jne 0x40191c
test ebx, ebx
js 0x401daf
or byte [0x4b866c], 1
xor edi, edi
inc edi
push 0x4a3092
push esi
call fcn.0047eec0
add esp, 8
test eax, eax
je 0x40209f
push 0x49e985
push esi
call fcn.0047eec0
add esp, 8
test eax, eax
je 0x4020eb
push str._hostkey
push esi
call fcn.0047eec0
add esp, 8
test eax, eax
je 0x4021f8
push 0x4a730c
push esi
call fcn.0047eec0
add esp, 8
test eax, eax
je 0x402137
push 0x4a6f0e
push esi
call fcn.0047eec0
add esp, 8
test eax, eax
je 0x402137
push 0x4a7c27
push esi
call fcn.0047eec0
add esp, 8
test eax, eax
je 0x402137
push 0x4a6514
push esi
call fcn.0047eec0
add esp, 8
test eax, eax
je 0x402392
push 0x4a2b93
push esi
call fcn.0047eec0
add esp, 8
test eax, eax
je 0x40242f
push 0x4a6fb8
push esi
call fcn.0047eec0
add esp, 8
test eax, eax
je 0x402571
push 0x49e417
push esi
call fcn.0047eec0
add esp, 8
test eax, eax
je 0x4025c2
push str._agent
push esi
call fcn.0047eec0
add esp, 8
test eax, eax
je 0x401a2e
push str._pagent
push esi
call fcn.0047eec0
add esp, 8
test eax, eax
je 0x401a2e
push str._pageant
push esi
call fcn.0047eec0
add esp, 8
test eax, eax
jne 0x401a5e
xor edi, edi
inc edi
test ebx, ebx
js 0x402cfa
test byte [0x4b6a14], 2
jne 0x402ce5
test ebx, ebx
jne 0x402228
push 1
push 0x1c
push ebp
call fcn.004035e6
add esp, 0xc
xor edi, edi
inc edi
push str._noagent
push esi
call fcn.0047eec0
add esp, 8
test eax, eax
je 0x401a94
push str._nopagent
push esi
call fcn.0047eec0
add esp, 8
test eax, eax
je 0x401a94
push str._nopageant
push esi
call fcn.0047eec0
add esp, 8
test eax, eax
jne 0x401ac4
xor edi, edi
inc edi
test ebx, ebx
js 0x402cfa
test byte [0x4b6a14], 2
jne 0x402ce5
test ebx, ebx
jne 0x402228
push 0
push 0x1c
push ebp
call fcn.004035e6
add esp, 0xc
xor edi, edi
inc edi
push str._share
push esi
call fcn.0047eec0
add esp, 8
test eax, eax
je 0x4026dd
push str._noshare
push esi
call fcn.0047eec0
add esp, 8
test eax, eax
je 0x402726
push 0x4a8096
push esi
call fcn.0047eec0
add esp, 8
test eax, eax
je 0x402775
push 0x4a68dd
push esi
call fcn.0047eec0
add esp, 8
test eax, eax
je 0x4027aa
push 0x4a6a9e
push esi
call fcn.0047eec0
add esp, 8
test eax, eax
je 0x4027df
push 0x49e3f9
push esi
call fcn.0047eec0
add esp, 8
test eax, eax
je 0x402817
push 0x49f4f0
push esi
call fcn.0047eec0
add esp, 8
test eax, eax
je 0x40284f
push 0x4a6cef
push esi
call fcn.0047eec0
add esp, 8
test eax, eax
je 0x402884
push 0x4a71a8
push esi
call fcn.0047eec0
add esp, 8
test eax, eax
je 0x4028b9
push 0x4a7eaf
push esi
call fcn.0047eec0
add esp, 8
test eax, eax
je 0x4028ee
push 0x4a967e
push esi
call fcn.0047eec0
add esp, 8
test eax, eax
je 0x402923
xor edi, edi
test ebx, ebx
js 0x402cfa
mov eax, dword [0x4b6a14]
test al, 4
je 0x401d50
cmp byte [0x4b6a18], 0
je 0x401e32
test al, 0x40
je 0x402cfa
cmp byte [0x4b6a19], 0
jne 0x402cfa
push esi
call fcn.004560ea
add esp, 4
mov esi, eax
push ebp
push 1
push eax
push 0x4a6fb8
call fcn.00401831
add esp, 0x10
mov edi, eax
push esi
call fcn.00410c0e
add esp, 4
cmp edi, 2
je 0x401da8
push 0x180
push str..._cmdline.c
push str.retd__2
call fcn.0047bdbf
add esp, 0xc
mov byte [0x4b6a19], 1
xor edi, edi
inc edi
jmp 0x402cfa
test edi, edi
je 0x402cf5
mov eax, edi
mov edi, 2
test ebx, ebx
js 0x402cfa
push ebp
mov esi, eax
push eax
call fcn.0041e4a3
add esp, 8
mov byte [0x4b92f4], 1
push esi
call fcn.004560ea
add esp, 4
mov dword [0x4b92f8], eax
jmp 0x402cfa
mov edx, edi
xor edi, edi
inc edi
test ebx, ebx
js 0x402cfa
test byte [0x4b6a14], 3
jne 0x402ce5
test ebx, ebx
jne 0x40222f
mov eax, 3
mov dword [0x4b8680], 0x16
mov dword [0x4b867c], eax
push eax
push 2
jmp 0x401f5d
test al, 0x20
je 0x401ea3
mov al, byte [0x4b92f4]
test al, al
je 0x401ea3
push ebp
call fcn.00412cdd
add esp, 4
test al, al
je 0x401ea3
mov eax, dword [0x4b6a14]
jmp 0x401d50
mov edx, edi
xor edi, edi
inc edi
test ebx, ebx
js 0x402cfa
test byte [0x4b6a14], 3
jne 0x402ce5
test ebx, ebx
jne 0x40222f
xor edi, edi
mov dword [0x4b8680], 0x17
inc edi
mov dword [0x4b867c], edi
push edi
push 2
push ebp
call fcn.004036be
add esp, 0xc
push dword [0x4b8680]
push edi
jmp 0x401f6e
push 7
push str.telnet:
push esi
call fcn.0047f180
add esp, 0xc
test eax, eax
je 0x401faf
mov ebx, dword [0x4b6a14]
xor eax, eax
dec eax
mov dword [esp], eax
test bl, 0x10
je 0x402266
push 0x2c
push esi
call fcn.00472d10
add esp, 8
test eax, eax
je 0x402266
mov edi, eax
sub eax, esi
push esi
push eax
push 0x4a0685
call fcn.004560a0
add esp, 0xc
mov esi, eax
push eax
call fcn.0041aa48
add esp, 4
test eax, eax
je 0x402240
mov ebx, eax
mov eax, dword [eax + 0x44]
mov dword [0x4b867c], eax
push eax
push 2
push ebp
call fcn.004036be
add esp, 0xc
mov eax, dword [ebx + 0x48]
jmp 0x402251
xor edi, edi
inc edi
test ebx, ebx
js 0x402cfa
test byte [0x4b6a14], 3
jne 0x402ce5
test ebx, ebx
jne 0x402228
mov eax, 2
mov dword [0x4b8680], 0x201
mov dword [0x4b867c], eax
push eax
push eax
push ebp
call fcn.004036be
add esp, 0xc
push dword [0x4b8680]
push 1
push ebp
jmp 0x402385
xor edi, edi
inc edi
test ebx, ebx
js 0x402cfa
test byte [0x4b6a14], 3
jne 0x402ce5
test ebx, ebx
jne 0x402228
xor eax, eax
mov dword [0x4b867c], eax
push eax
push 2
push ebp
call fcn.004036be
add esp, 0xc
xor edi, edi
inc edi
jmp 0x4018e2
cmp byte [esi + 7], 0x2f
lea ebx, [esi + 7]
jne 0x401fc2
cmp byte [esi + 8], 0x2f
lea eax, [esi + 9]
cmove ebx, eax
push 1
push 2
push ebp
call fcn.004036be
add esp, 0xc
push 0x4a9950
push ebx
call fcn.00455f1c
add esp, 8
mov esi, eax
push ebx
push eax
push 0x4a0685
call fcn.004560a0
add esp, 0xc
mov edi, eax
push eax
push 0
push ebp
call fcn.004037c1
add esp, 0xc
push edi
call fcn.00410c0e
add esp, 4
mov byte [0x4b6a18], 1
cmp byte [ebx + esi], 0x3a
jne 0x40208d
add ebx, esi
inc ebx
push ebx
call fcn.0047cd48
add esp, 4
xor edi, edi
inc edi
push eax
push edi
push ebp
call fcn.004036be
add esp, 0xc
mov byte [0x4b6a19], 1
jmp 0x402cfa
xor edi, edi
inc edi
test ebx, ebx
js 0x402cfa
test byte [0x4b6a14], 3
jne 0x402ce5
test ebx, ebx
jne 0x402228
mov eax, 4
mov dword [0x4b867c], eax
push eax
push 2
push ebp
call fcn.004036be
add esp, 0xc
push 0
push ebp
call fcn.004031d2
add esp, 8
push eax
push 0x3b
push ebp
call fcn.004037c1
add esp, 0xc
xor edi, edi
inc edi
jmp 0x4018f8
push 0xffffffffffffffff
push 1
push ebp
call fcn.004036be
add esp, 0xc
jmp 0x401daf
cmp dword [esp + 0x1028], 0
je 0x402cf5
mov edi, 2
test ebx, ebx
js 0x402cfa
test byte [0x4b6a14], 2
jne 0x402ce5
test ebx, ebx
jne 0x402228
push dword [esp + 0x1028]
push 0x36
push ebp
call fcn.004037c1
add esp, 0xc
mov edi, 2
jmp 0x401932
cmp dword [esp + 0x1028], 0
je 0x402cf5
mov edi, 2
test ebx, ebx
js 0x402cfa
test byte [0x4b6a14], 2
jne 0x402ce5
test ebx, ebx
jne 0x402228
push dword [esp + 0x1028]
push 9
push ebp
call fcn.004037c1
add esp, 0xc
mov edi, 2
jmp 0x401948
cmp dword [esp + 0x1028], 0
je 0x402cf5
mov edi, 2
test ebx, ebx
js 0x402cfa
test byte [0x4b6a14], 3
jne 0x402ce5
test ebx, ebx
jne 0x402228
push 0x4a7c27
push esi
call fcn.0047eec0
add esp, 8
test eax, eax
je 0x402631
movsx eax, byte [esi + 1]
mov dword [esp + 4], eax
push 0x3a
push dword [esp + 0x102c]
call fcn.00455f9f
add esp, 8
test eax, eax
je 0x402623
mov ebp, eax
mov dword [esp], eax
lea eax, [ebp + 1]
push 0x3a
push eax
call fcn.00455f9f
add esp, 8
mov ecx, eax
mov eax, ebp
test ecx, ecx
mov ebp, ecx
jne 0x4021a0
cmp dword [esp], 0
mov ebp, dword [esp + 0x1030]
je 0x402623
mov edi, dword [esp]
mov ecx, dword [esp + 0x1028]
mov eax, edi
sub eax, ecx
push ecx
push eax
push dword [esp + 0xc]
push str._c_.s
call fcn.004560a0
add esp, 0x10
inc edi
mov dword [esp + 4], eax
push edi
jmp 0x40264e
cmp dword [esp + 0x1028], 0
je 0x402cf5
mov edi, 2
test ebx, ebx
js 0x402cfa
test byte [0x4b6a14], 2
jne 0x402ce5
test ebx, ebx
je 0x402522
mov edx, dword [esp + 0x1028]
mov ecx, esi
push 0
call fcn.00402d15
add esp, 4
jmp 0x402cfa
push esi
push str.unrecognised_protocol_prefix__s
call fcn.0045d86a
add esp, 8
xor eax, eax
dec eax
mov dword [esp], eax
push esi
call fcn.00410c0e
add esp, 4
mov ebx, dword [0x4b6a14]
inc edi
mov esi, edi
xor edi, edi
test bl, 8
jne 0x402271
mov ebp, esi
jmp 0x40229a
push 0x40
push esi
call fcn.00472e40
add esp, 8
test eax, eax
mov ebp, esi
je 0x40229a
mov ebx, eax
sub eax, esi
push esi
push eax
push 0x4a0685
call fcn.004560a0
add esp, 0xc
inc ebx
mov edi, eax
mov ebp, ebx
push 0x4ac9fa
push esi
call fcn.0047f3e0
add esp, 8
add eax, esi
push eax
call fcn.004560ea
add esp, 4
mov esi, eax
push eax
call fcn.0047f0f0
add esp, 4
test eax, eax
je 0x4022d8
mov cl, byte [esi + eax - 1]
cmp cl, 0x20
je 0x4022d0
cmp cl, 9
jne 0x4022d8
mov byte [esi + eax - 1], 0
dec eax
jne 0x4022c2
mov byte [0x4b6a18], 1
push esi
push 0
push dword [esp + 0x1038]
call fcn.004037c1
add esp, 0xc
mov eax, dword [0x4b6a14]
test al, 8
je 0x40235b
mov al, byte [0x4b92f4]
test al, al
jne 0x40235b
call fcn.00402e2c
mov ebx, eax
push eax
push ebp
call fcn.0041e4a3
add esp, 8
test al, al
je 0x402352
push ebx
call fcn.00412cdd
add esp, 4
test al, al
je 0x402352
push ebx
push dword [esp + 0x1034]
call fcn.00402ee6
add esp, 8
test edi, edi
mov byte [0x4b92f4], 1
je 0x402352
push edi
push 0x36
push dword [esp + 0x1038]
call fcn.004037c1
add esp, 0xc
push ebx
call fcn.00402ea8
add esp, 4
push esi
call fcn.00410c0e
add esp, 4
push edi
call fcn.00410c0e
add esp, 4
mov eax, dword [esp]
xor edi, edi
inc edi
test eax, eax
js 0x402cfa
push eax
push 1
push dword [esp + 0x1038]
call fcn.004036be
add esp, 0xc
jmp 0x402cfa
cmp dword [esp + 0x1028], 0
je 0x402cf5
mov edi, 2
test ebx, ebx
js 0x402cfa
test byte [0x4b6a14], 3
jne 0x402ce5
test ebx, ebx
jne 0x402228
push 0x3a
push dword [esp + 0x102c]
call fcn.00455f9f
add esp, 8
test eax, eax
je 0x40268b
mov ecx, dword [esp + 0x1028]
mov edi, eax
sub eax, ecx
push ecx
push eax
push 0x4a0685
call fcn.004560a0
add esp, 0xc
mov dword [esp], eax
push eax
push 0x30
push ebp
call fcn.004037c1
add esp, 0xc
inc edi
push edi
call fcn.0047cd48
add esp, 4
push eax
push 0x31
push ebp
call fcn.004036be
add esp, 0xc
push dword [esp]
call fcn.00410c0e
add esp, 4
mov edi, 2
jmp 0x4019b6
cmp dword [esp + 0x1028], 0
je 0x402cf5
mov edi, 2
test ebx, ebx
js 0x402cfa
test byte [0x4b6a14], 3
jne 0x402ce5
test ebx, ebx
jne 0x402228
push 0x4a1972
push dword [esp + 0x102c]
call fcn.0047de4e
add esp, 8
test eax, eax
je 0x402715
mov ebp, eax
call fcn.00456342
mov dword [esp + 4], eax
lea eax, [esp + 0xc]
mov dword [esp], ebp
push ebp
push 0x1000
push 1
push eax
call fcn.0047dfe2
add esp, 0x10
test eax, eax
je 0x4024cf
mov ebp, dword [esp + 4]
add ebp, 0xc
push eax
lea edi, [esp + 0x10]
push edi
push ebp
call fcn.0041062c
add esp, 0xc
push dword [esp]
push 0x1000
push 1
push edi
call fcn.0047dfe2
add esp, 0x10
test eax, eax
jne 0x4024a9
push dword [esp]
call fcn.0047d958
add esp, 4
mov edi, dword [esp + 4]
push dword [edi]
push 0x14
mov ebp, dword [esp + 0x1038]
push ebp
call fcn.004037c1
add esp, 0xc
push 0x4acb35
push 0x15
push ebp
call fcn.004037c1
add esp, 0xc
push 1
push 0x16
push ebp
call fcn.004035e6
add esp, 0xc
push edi
call fcn.004563a4
add esp, 4
mov edi, 2
jmp 0x4019cc
mov eax, dword [esp + 0x1028]
push eax
call fcn.004560ea
add esp, 4
mov dword [esp], eax
push eax
call fcn.00412d35
add esp, 4
test al, al
je 0x402602
push 0x4acb35
mov edi, dword [esp + 4]
push edi
push 0xba
push ebp
call fcn.00403846
add esp, 0x10
push edi
call fcn.00410c0e
add esp, 4
mov edi, 2
jmp 0x40195e
cmp dword [esp + 0x1028], 0
je 0x402cf5
mov edi, 2
test ebx, ebx
js 0x402cfa
test byte [0x4b6a14], 2
jne 0x402ce5
test ebx, ebx
jne 0x4025f2
push dword [esp + 0x1028]
call fcn.0047cd48
add esp, 4
push eax
push 1
push ebp
call fcn.004036be
add esp, 0xc
mov edi, 2
jmp 0x4019e2
cmp dword [esp + 0x1028], 0
je 0x402cf5
mov edi, 2
test ebx, ebx
js 0x402cfa
test byte [0x4b6a14], 2
jne 0x402ce5
test ebx, ebx
je 0x40269a
mov edx, dword [esp + 0x1028]
mov ecx, esi
push 1
jmp 0x402233
push dword [esp + 0x1028]
push str._s_is_not_a_valid_format_for_a_manual_host_key_specification
call fcn.0045d86a
add esp, 8
push dword [esp]
call fcn.00410c0e
jmp 0x402238
push dword [esp + 4]
push str.__c_expects_at_least_two_colons_in_its_argument
jmp 0x402ceb
push dword [esp + 0x1028]
push 0x4a0835
call fcn.004560a0
add esp, 8
mov dword [esp + 4], eax
push 0x4a7c28
call fcn.004560ea
add esp, 4
mov dword [esp], eax
push eax
mov edi, dword [esp + 8]
push edi
push 0xa8
push ebp
call fcn.00403846
add esp, 0x10
push edi
call fcn.00410c0e
add esp, 4
push dword [esp]
call fcn.00410c0e
add esp, 4
mov edi, 2
jmp 0x4019a0
push str._nc_expects_argument_of_form_host:port
call fcn.0045d86a
jmp 0x402238
push 2
push ebp
call fcn.0040308d
add esp, 8
cmp eax, 3
jne 0x40275e
mov eax, dword [esp + 0x1028]
mov edi, eax
push eax
call fcn.004560ea
add esp, 4
mov dword [0x4b69f4], eax
push edi
call fcn.0047f0f0
add esp, 4
push eax
push edi
call fcn.00467c20
add esp, 8
jmp 0x40276b
xor edi, edi
inc edi
test ebx, ebx
js 0x402cfa
test byte [0x4b6a14], 2
jne 0x402ce5
test ebx, ebx
jne 0x402228
push 1
push 0xb7
push ebp
call fcn.004035e6
add esp, 0xc
xor edi, edi
inc edi
jmp 0x401ada
push dword [esp + 0x1028]
push str.unable_to_open_command_file___s_
jmp 0x402ceb
xor edi, edi
inc edi
test ebx, ebx
js 0x402cfa
test byte [0x4b6a14], 2
jne 0x402ce5
test ebx, ebx
jne 0x402228
push 0
push 0xb7
push ebp
call fcn.004035e6
add esp, 0xc
xor edi, edi
inc edi
jmp 0x401af0
push str.the__pw_option_can_only_be_used_with_the_SSH_protocol
call fcn.0045d86a
add esp, 4
mov edi, 2
jmp 0x4019f8
xor edi, edi
inc edi
test ebx, ebx
js 0x402cfa
test byte [0x4b6a14], 3
jne 0x402ce5
test ebx, ebx
jne 0x402228
push 1
push 0x1d
push ebp
call fcn.004035e6
add esp, 0xc
xor edi, edi
inc edi
jmp 0x401b06
xor edi, edi
inc edi
test ebx, ebx
js 0x402cfa
test byte [0x4b6a14], 3
jne 0x402ce5
test ebx, ebx
jne 0x402228
push 0
push 0x1d
push ebp
call fcn.004035e6
add esp, 0xc
xor edi, edi
inc edi
jmp 0x401b1c
xor edi, edi
inc edi
test ebx, ebx
js 0x402cfa
test byte [0x4b6a14], 3
jne 0x402ce5
test ebx, ebx
jne 0x402228
push 1
push 0xa2
push ebp
call fcn.004035e6
add esp, 0xc
xor edi, edi
inc edi
jmp 0x401b32
xor edi, edi
inc edi
test ebx, ebx
js 0x402cfa
test byte [0x4b6a14], 3
jne 0x402ce5
test ebx, ebx
jne 0x402228
push 0
push 0xa2
push ebp
call fcn.004035e6
add esp, 0xc
xor edi, edi
inc edi
jmp 0x401b48
xor edi, edi
inc edi
test ebx, ebx
js 0x402cfa
test byte [0x4b6a14], 3
jne 0x402ce5
test ebx, ebx
jne 0x4025f2
push 0
push 0x16
push ebp
call fcn.004035e6
add esp, 0xc
xor edi, edi
inc edi
jmp 0x401b5e
xor edi, edi
inc edi
test ebx, ebx
js 0x402cfa
test byte [0x4b6a14], 3
jne 0x402ce5
test ebx, ebx
jne 0x4025f2
push 1
push 0x16
push ebp
call fcn.004035e6
add esp, 0xc
xor edi, edi
inc edi
jmp 0x401b74
xor edi, edi
inc edi
test ebx, ebx
js 0x402cfa
test byte [0x4b6a14], 3
jne 0x402ce5
test ebx, ebx
jne 0x402228
push 1
push 0x2f
push ebp
call fcn.004035e6
add esp, 0xc
xor edi, edi
inc edi
jmp 0x401b8a
xor edi, edi
inc edi
test ebx, ebx
js 0x402cfa
test byte [0x4b6a14], 2
jne 0x402ce5
test ebx, ebx
jne 0x402228
push 1
push 0x17
push ebp
call fcn.004035e6
add esp, 0xc
xor edi, edi
inc edi
jmp 0x401ba0
push esi
push str.option___s__not_available_in_this_tool
call fcn.0045d86a
add esp, 8
jmp 0x402cfa
mov edi, 0xfffffffe
mov ecx, dword [esp + 0x100c]
xor ecx, esp
call fcn.0046fa9a
mov eax, edi
add esp, 0x1010
pop esi
pop edi
pop ebx
pop ebp
ret