Function at 0x403080
Capabilities:
Read file on windows

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
mov eax, 0x102c
call fcn.00435e30
mov eax, dword [section..data]
xor eax, esp
mov dword [esp + 0x1028], eax
push ebx
mov ebx, dword [ebp + 0xc]
push esi
push edi
mov edi, ecx
mov dword [esp + 0x10], ebx
xor ecx, ecx
mov esi, edx
mov dword [esp + 0x14], esi
mov dword [esp + 0xc], ecx
cmp byte [edi], 0x2d
je 0x403336
cmp byte [0x44b4b2], cl
jne 0x40331f
cmp byte [0x44b4b3], cl
je 0x4030e2
mov ecx, ebx
call fcn.00410890
test al, al
jne 0x40331f
push 7
push str.telnet:
push edi
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strncmp]
add esp, 0xc
test eax, eax
jne 0x4031ec
add edi, 7
cmp byte [edi], 0x2f
jne 0x40310c
cmp byte [edi + 1], 0x2f
jne 0x40310c
add edi, 2
push 1
mov edx, 2
mov ecx, ebx
call fcn.00410060
add esp, 4
mov edx, 0x443500
mov ecx, edi
mov esi, edi
push 1
call fcn.004132a0
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x40313a
sub ecx, edi
jmp 0x403149
mov ecx, edi
lea edx, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x403140
sub ecx, edx
push esi
push ecx
push 0x443504
add edi, ecx
call fcn.00410be0
add esp, 0xc
mov esi, eax
xor edx, edx
mov ecx, ebx
push esi
call fcn.004100a0
add esp, 4
test esi, esi
je 0x403177
push esi
call dword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
add esp, 4
cmp byte [edi], 0x3a
mov byte [0x44b4b2], 1
jne 0x4031c1
lea eax, [edi + 1]
push eax
call dword [sym.imp.api_ms_win_crt_convert_l1_1_0.dll_atoi]
add esp, 4
mov edx, 1
mov ecx, ebx
push eax
call fcn.00410060
mov byte [0x44b4b1], 1
add esp, 4
mov eax, 1
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x1028]
xor ecx, esp
call fcn.0043505d
mov esp, ebp
pop ebp
ret
push 0xffffffffffffffff
mov edx, 1
mov ecx, ebx
call fcn.00410060
add esp, 4
mov eax, 1
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x1028]
xor ecx, esp
call fcn.0043505d
mov esp, ebp
pop ebp
ret
push 0x2c
push edi
xor ebx, ebx
call dword [sym.imp.VCRUNTIME140.dll_strchr]
add esp, 8
test eax, eax
jne 0x404ac9
push 0x40
push edi
mov dword [esp + 0x20], edi
call dword [sym.imp.VCRUNTIME140.dll_strrchr]
mov esi, eax
add esp, 8
test esi, esi
je 0x403232
push edi
sub eax, edi
push eax
push 0x443504
call fcn.00410be0
mov ebx, eax
add esp, 0xc
lea eax, [esi + 1]
mov dword [esp + 0x18], eax
push 0x443530
push edi
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strspn]
add esp, 8
lea ecx, [edi + eax]
call fcn.004108f0
mov edi, eax
mov ecx, edi
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x403250
sub ecx, edx
je 0x40327c
dec ecx
mov esi, 1
add ecx, edi
sub esi, edi
mov al, byte [ecx]
mov edx, ecx
cmp al, 0x20
je 0x403271
cmp al, 9
jne 0x40327c
dec ecx
mov byte [edx], 0
lea eax, [esi + ecx]
test eax, eax
jne 0x403265
mov ecx, dword [esp + 0x10]
xor edx, edx
push edi
mov byte [0x44b4b2], 1
call fcn.004100a0
add esp, 4
cmp byte [0x44b4b3], 0
jne 0x4032eb
call fcn.0040fcd0
mov ecx, dword [esp + 0x18]
mov esi, eax
mov edx, esi
call fcn.00402c60
test al, al
je 0x4032e4
mov ecx, esi
call fcn.00410890
test al, al
je 0x4032e4
mov ecx, dword [esp + 0x10]
mov edx, esi
call fcn.0040fe40
mov byte [0x44b4b3], 1
test ebx, ebx
je 0x4032e4
mov ecx, dword [esp + 0x10]
mov edx, 0x3f
push ebx
call fcn.004100a0
add esp, 4
mov ecx, esi
call fcn.0040fd80
mov esi, dword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
test edi, edi
je 0x4032fb
push edi
call esi
add esp, 4
test ebx, ebx
je 0x403305
push ebx
call esi
add esp, 4
mov eax, 1
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x1028]
xor ecx, esp
call fcn.0043505d
mov esp, ebp
pop ebp
ret
xor eax, eax
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x1028]
xor ecx, esp
call fcn.0043505d
mov esp, ebp
pop ebp
ret
mov ecx, str._load
mov eax, edi
nop dword [eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x403360
test dl, dl
je 0x40335c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x403360
add eax, 2
add ecx, 2
test dl, dl
jne 0x403340
xor eax, eax
jmp 0x403365
sbb eax, eax
or eax, 1
test eax, eax
jne 0x40339b
test esi, esi
je 0x404aaf
mov edx, ebx
mov ecx, esi
call fcn.00402c60
mov byte [0x44b4b3], 1
mov eax, 2
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x1028]
xor ecx, esp
call fcn.0043505d
mov esp, ebp
pop ebp
ret
mov ecx, 0x443540
mov eax, edi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4033c2
test dl, dl
je 0x4033be
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4033c2
add eax, 2
add ecx, 2
test dl, dl
jne 0x4033a2
xor eax, eax
jmp 0x4033c7
sbb eax, eax
or eax, 1
test eax, eax
jne 0x4033da
mov dword [esp + 0xc], 1
mov byte [0x44b4b0], 1
mov ecx, 0x443544
mov eax, edi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x403401
test dl, dl
je 0x4033fd
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x403401
add eax, 2
add ecx, 2
test dl, dl
jne 0x4033e1
xor eax, eax
jmp 0x403406
sbb eax, eax
or eax, 1
test eax, eax
jne 0x403431
test esi, esi
je 0x404aaf
mov dword [esp + 0xc], 2
cmp dword [ebp + 8], eax
jne 0x404aa8
push esi
lea edx, [eax + 0x3f]
mov ecx, ebx
call fcn.004100a0
add esp, 4
mov ecx, str._loghost
mov eax, edi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x403458
test dl, dl
je 0x403454
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x403458
add eax, 2
add ecx, 2
test dl, dl
jne 0x403438
xor eax, eax
jmp 0x40345d
sbb eax, eax
or eax, 1
test eax, eax
jne 0x403488
test esi, esi
je 0x404aaf
mov dword [esp + 0xc], 2
cmp dword [ebp + 8], eax
jne 0x404aa8
push esi
lea edx, [eax + 9]
mov ecx, ebx
call fcn.004100a0
add esp, 4
mov ecx, str._hostkey
mov eax, edi
nop
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4034b0
test dl, dl
je 0x4034ac
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4034b0
add eax, 2
add ecx, 2
test dl, dl
jne 0x403490
xor eax, eax
jmp 0x4034b5
sbb eax, eax
or eax, 1
test eax, eax
jne 0x403511
test esi, esi
je 0x404aaf
mov dword [esp + 0xc], 2
cmp dword [ebp + 8], eax
jne 0x404aa8
mov ecx, esi
call fcn.004108f0
mov esi, eax
mov ecx, esi
call fcn.00410ed0
test al, al
je 0x404ae5
push 0x436248
push esi
mov edx, 0x29
mov ecx, ebx
call fcn.00410130
add esp, 8
test esi, esi
je 0x40350d
push esi
call dword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
add esp, 4
mov esi, dword [esp + 0x14]
mov ecx, 0x4435a0
mov eax, edi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x403538
test dl, dl
je 0x403534
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x403538
add eax, 2
add ecx, 2
test dl, dl
jne 0x403518
xor eax, eax
jmp 0x40353d
sbb eax, eax
or eax, 1
test eax, eax
je 0x4035a5
mov ecx, 0x4435a4
mov eax, edi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x403568
test dl, dl
je 0x403564
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x403568
add eax, 2
add ecx, 2
test dl, dl
jne 0x403548
xor eax, eax
jmp 0x40356d
sbb eax, eax
or eax, 1
test eax, eax
je 0x4035a5
mov ecx, 0x4435a8
mov eax, edi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x403598
test dl, dl
je 0x403594
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x403598
add eax, 2
add ecx, 2
test dl, dl
jne 0x403578
xor eax, eax
jmp 0x40359d
sbb eax, eax
or eax, 1
test eax, eax
jne 0x4036d8
test esi, esi
je 0x404aaf
cmp dword [ebp + 8], 0
mov dword [esp + 0xc], 2
jne 0x404aa8
mov ecx, 0x4435a8
mov eax, edi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4035e6
test dl, dl
je 0x4035e2
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4035e6
add eax, 2
add ecx, 2
test dl, dl
jne 0x4035c6
xor eax, eax
jmp 0x4035eb
sbb eax, eax
or eax, 1
test eax, eax
je 0x40366b
mov al, byte [edi + 1]
mov ecx, esi
mov byte [esp + 0x1f], al
call fcn.00410eb0
mov esi, eax
mov ebx, esi
test esi, esi
je 0x404af4
nop dword [eax]
push 1
lea ecx, [esi + 1]
mov word [esp + 0x28], 0x3a
lea edx, [esp + 0x28]
call fcn.004132a0
add esp, 4
test eax, eax
je 0x403632
mov ebx, esi
mov esi, eax
jmp 0x403610
test ebx, ebx
je 0x404af4
mov edx, dword [esp + 0x14]
mov eax, ebx
push edx
sub eax, edx
push eax
movsx eax, byte [esp + 0x27]
push eax
push str._c_.s
call fcn.00410be0
add esp, 0x10
mov dword [esp + 0x20], eax
lea ecx, [ebx + 1]
call fcn.004108f0
mov ebx, dword [esp + 0x20]
mov esi, eax
jmp 0x4036a3
push esi
push 0x4435e4
call fcn.00410be0
push 2
mov ebx, eax
call dword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_malloc]
mov esi, eax
add esp, 0xc
test esi, esi
je 0x404b04
mov ecx, 0x4364e0
mov edx, esi
sub edx, ecx
mov al, byte [ecx]
lea ecx, [ecx + 1]
mov byte [edx + ecx - 1], al
test al, al
jne 0x403696
mov ecx, dword [esp + 0x10]
mov edx, 0xb6
push esi
push ebx
call fcn.00410130
add esp, 8
test ebx, ebx
je 0x4036c8
push ebx
mov ebx, dword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
call ebx
add esp, 4
jmp 0x4036ce
mov ebx, dword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
test esi, esi
je 0x4036d8
push esi
call ebx
add esp, 4
mov ecx, 0x4435e8
mov eax, edi
nop
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x403700
test dl, dl
je 0x4036fc
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x403700
add eax, 2
add ecx, 2
test dl, dl
jne 0x4036e0
xor eax, eax
jmp 0x403705
sbb eax, eax
or eax, 1
test eax, eax
jne 0x403795
mov esi, dword [esp + 0x14]
test esi, esi
je 0x404aaf
mov dword [esp + 0xc], 2
cmp dword [ebp + 8], eax
jne 0x404aa8
mov ecx, esi
call fcn.00410eb0
mov esi, eax
test esi, esi
je 0x404b09
mov edx, dword [esp + 0x14]
sub eax, edx
push edx
push eax
push 0x443504
call fcn.00410be0
mov ecx, dword [esp + 0x1c]
add esp, 0xc
mov ebx, eax
mov edx, 0x39
push ebx
call fcn.004100a0
add esp, 4
lea eax, [esi + 1]
push eax
call dword [sym.imp.api_ms_win_crt_convert_l1_1_0.dll_atoi]
mov esi, dword [esp + 0x14]
add esp, 4
mov edx, 0x3a
mov ecx, esi
push eax
call fcn.00410060
add esp, 4
test ebx, ebx
je 0x403799
push ebx
call dword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
add esp, 4
jmp 0x403799
mov esi, dword [esp + 0x10]
mov ecx, 0x443618
mov eax, edi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4037c0
test dl, dl
je 0x4037bc
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4037c0
add eax, 2
add ecx, 2
test dl, dl
jne 0x4037a0
xor eax, eax
jmp 0x4037c5
sbb eax, eax
or eax, 1
test eax, eax
jne 0x4038cc
mov eax, dword [esp + 0x14]
test eax, eax
je 0x404aaf
cmp dword [ebp + 8], 0
mov ecx, 2
mov dword [esp + 0xc], ecx
je 0x403810
push 0
mov edx, eax
mov ecx, edi
call fcn.00402ee0
add esp, 4
mov eax, 2
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x1028]
xor ecx, esp
call fcn.0043505d
mov esp, ebp
pop ebp
ret
push 0x44361c
push eax
call dword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fopen]
mov ebx, eax
add esp, 8
test ebx, ebx
je 0x404b13
xor cl, cl
call fcn.00410540
push ebx
push 0x1000
mov dword [esp + 0x20], eax
lea eax, [esp + 0x38]
push 1
push eax
call dword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fread]
add esp, 0x10
test eax, eax
je 0x403881
mov esi, dword [esp + 0x18]
add esi, 0xc
push eax
lea eax, [esp + 0x34]
push eax
mov eax, dword [esi]
push esi
call eax
add esp, 0xc
lea eax, [esp + 0x30]
push ebx
push 0x1000
push 1
push eax
call dword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fread]
add esp, 0x10
test eax, eax
jne 0x403855
mov esi, dword [esp + 0x10]
push ebx
call dword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fclose]
mov ebx, dword [esp + 0x1c]
add esp, 4
mov edx, 0x14
mov ecx, esi
push dword [ebx]
call fcn.004100a0
add esp, 4
mov edx, 0x15
mov ecx, esi
push 0x436248
call fcn.004100a0
add esp, 4
mov edx, 0x16
mov ecx, esi
push 1
call fcn.00410020
add esp, 4
mov ecx, ebx
call fcn.004105b0
mov ecx, 0x443534
mov eax, edi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4038f3
test dl, dl
je 0x4038ef
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4038f3
add eax, 2
add ecx, 2
test dl, dl
jne 0x4038d3
xor eax, eax
jmp 0x4038f8
sbb eax, eax
or eax, 1
mov ebx, dword [esp + 0x14]
test eax, eax
jne 0x403933
test ebx, ebx
je 0x404aaf
mov dword [esp + 0xc], 2
cmp dword [ebp + 8], eax
jne 0x404467
push ebx
call dword [sym.imp.api_ms_win_crt_convert_l1_1_0.dll_atoi]
add esp, 4
mov edx, 1
mov ecx, esi
push eax
call fcn.00410060
add esp, 4
mov ecx, 0x443644
mov eax, edi
nop word [eax + eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x403960
test dl, dl
je 0x40395c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x403960
add eax, 2
add ecx, 2
test dl, dl
jne 0x403940
xor eax, eax
jmp 0x403965
sbb eax, eax
or eax, 1
test eax, eax
jne 0x403a1b
test ebx, ebx
je 0x404aaf
mov dword [esp + 0xc], 2
cmp dword [ebp + 8], eax
jne 0x404461
lea edx, [eax + 2]
mov ecx, esi
call fcn.00410000
cmp eax, 3
jne 0x404b22
mov ebx, dword [0x44b4ac]
test ebx, ebx
je 0x4039df
mov esi, ebx
lea ecx, [esi + 1]
mov al, byte [esi]
inc esi
test al, al
jne 0x4039a8
sub esi, ecx
je 0x4039d1
push esi
push 0
push ebx
call sub.VCRUNTIME140.dll_memset
mov eax, dword [fcn.0040ae20]
add esp, 0xc
push esi
push ebx
call eax
mov ebx, dword [0x44b4ac]
add esp, 8
test ebx, ebx
je 0x4039df
push ebx
call dword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
add esp, 4
mov ebx, dword [esp + 0x14]
mov ecx, ebx
call fcn.004108f0
mov esi, ebx
mov dword [0x44b4ac], eax
lea ecx, [esi + 1]
mov al, byte [esi]
inc esi
test al, al
jne 0x4039f4
sub esi, ecx
je 0x403a17
push esi
push 0
push ebx
call sub.VCRUNTIME140.dll_memset
mov eax, dword [fcn.0040ae20]
add esp, 0xc
push esi
push ebx
call eax
add esp, 8
mov esi, dword [esp + 0x10]
mov ecx, str._pwfile
mov eax, edi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x403a42
test dl, dl
je 0x403a3e
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x403a42
add eax, 2
add ecx, 2
test dl, dl
jne 0x403a22
xor eax, eax
jmp 0x403a47
sbb eax, eax
or eax, 1
test eax, eax
jne 0x403c84
test ebx, ebx
je 0x404aaf
mov dword [esp + 0xc], 2
cmp dword [ebp + 8], eax
jne 0x404461
lea edx, [eax + 2]
mov ecx, esi
call fcn.00410000
cmp eax, 3
jne 0x404b2c
mov ecx, ebx
call fcn.0040b600
push 0
mov ebx, eax
xor ecx, ecx
push 1
push 0x44361c
mov dword [esp + 0x38], ebx
call fcn.00412bd0
add esp, 0xc
push eax
push dword [ebx]
call dword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll__wfopen]
add esp, 8
mov dword [esp + 0x18], eax
test eax, eax
je 0x404b36
mov ebx, dword [0x44b4ac]
test ebx, ebx
je 0x403af9
mov esi, ebx
lea ecx, [esi + 1]
mov al, byte [esi]
inc esi
test al, al
jne 0x403ac2
sub esi, ecx
je 0x403aeb
push esi
push 0
push ebx
call sub.VCRUNTIME140.dll_memset
mov eax, dword [fcn.0040ae20]
add esp, 0xc
push esi
push ebx
call eax
mov ebx, dword [0x44b4ac]
add esp, 8
test ebx, ebx
je 0x403af9
push ebx
call dword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
add esp, 4
push 0x200
call dword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_malloc]
mov esi, eax
add esp, 4
test esi, esi
je 0x404b45
push dword [esp + 0x18]
mov ebx, 0x200
mov dword [esp + 0x28], 0
push ebx
push esi
call dword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fgets]
add esp, 0xc
test eax, eax
je 0x404b4e
mov edx, dword [esp + 0x24]
lea ecx, [edx + esi]
lea eax, [ecx + 1]
mov dword [esp + 0x20], eax
mov al, byte [ecx]
inc ecx
test al, al
jne 0x403b43
sub ecx, dword [esp + 0x20]
add edx, ecx
mov dword [esp + 0x24], edx
je 0x403b61
cmp byte [edx + esi - 1], 0xa
je 0x403c2c
lea eax, [edx + 0x200]
cmp ebx, eax
ja 0x403c00
mov ecx, edx
mov eax, 0x100
sub ecx, ebx
add ecx, 0x200
cmp ecx, 0x100
cmovb ecx, eax
mov eax, ebx
shr eax, 4
cmp ecx, eax
cmovae eax, ecx
mov ecx, ebx
not ecx
cmp eax, ecx
cmovbe ecx, eax
add ecx, ebx
mov eax, ecx
mov dword [esp + 0x28], ecx
mov ecx, 1
cmove eax, ecx
push eax
call dword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_malloc]
add esp, 4
mov dword [esp + 0x20], eax
test eax, eax
je 0x404b04
test ebx, ebx
je 0x403bf6
push ebx
push esi
push eax
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
test esi, esi
je 0x403bf2
push ebx
push 0
push esi
call sub.VCRUNTIME140.dll_memset
mov eax, dword [fcn.0040ae20]
add esp, 0xc
push ebx
push esi
call eax
push esi
call dword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
add esp, 0xc
mov eax, dword [esp + 0x20]
mov ebx, dword [esp + 0x28]
mov esi, eax
mov edx, dword [esp + 0x24]
push dword [esp + 0x18]
mov eax, ebx
sub eax, edx
push eax
lea eax, [edx + esi]
push eax
call dword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fgets]
add esp, 0xc
test eax, eax
jne 0x403b35
mov edx, dword [esp + 0x24]
mov eax, esi
test edx, edx
je 0x404b4a
mov byte [edx + esi], 0
test esi, esi
je 0x404b5a
mov ecx, esi
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x403c40
sub ecx, edx
test ecx, ecx
jle 0x403c64
lea eax, [esi - 1]
add eax, ecx
mov dl, byte [eax]
cmp dl, 0xd
je 0x403c5e
cmp dl, 0xa
jne 0x403c64
dec ecx
dec eax
test ecx, ecx
jg 0x403c52
push dword [esp + 0x18]
mov byte [ecx + esi], 0
mov dword [0x44b4ac], esi
call dword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fclose]
mov ecx, dword [esp + 0x30]
add esp, 4
call fcn.0040b7d0
mov ecx, str._agent
mov eax, edi
nop dword [eax + eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x403cb0
test dl, dl
je 0x403cac
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x403cb0
add eax, 2
add ecx, 2
test dl, dl
jne 0x403c90
xor eax, eax
jmp 0x403cb5
sbb eax, eax
or eax, 1
test eax, eax
je 0x403d19
mov ecx, str._pagent
mov eax, edi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x403ce0
test dl, dl
je 0x403cdc
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x403ce0
add eax, 2
add ecx, 2
test dl, dl
jne 0x403cc0
xor eax, eax
jmp 0x403ce5
sbb eax, eax
or eax, 1
test eax, eax
je 0x403d19
mov ecx, str._pageant
mov eax, edi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x403d10
test dl, dl
je 0x403d0c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x403d10
add eax, 2
add ecx, 2
test dl, dl
jne 0x403cf0
xor eax, eax
jmp 0x403d15
sbb eax, eax
or eax, 1
test eax, eax
jne 0x403d41
mov esi, dword [ebp + 8]
mov dword [esp + 0xc], 1
test esi, esi
jne 0x404aa4
mov ebx, dword [esp + 0x10]
lea edx, [esi + 0x1d]
push 1
mov ecx, ebx
call fcn.00410020
add esp, 4
jmp 0x403d48
mov ebx, dword [esp + 0x10]
mov esi, dword [ebp + 8]
mov ecx, str._noagent
mov eax, edi
nop
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x403d70
test dl, dl
je 0x403d6c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x403d70
add eax, 2
add ecx, 2
test dl, dl
jne 0x403d50
xor eax, eax
jmp 0x403d75
sbb eax, eax
or eax, 1
test eax, eax
je 0x403dd9
mov ecx, str._nopagent
mov eax, edi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x403da0
test dl, dl
je 0x403d9c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x403da0
add eax, 2
add ecx, 2
test dl, dl
jne 0x403d80
xor eax, eax
jmp 0x403da5
sbb eax, eax
or eax, 1
test eax, eax
je 0x403dd9
mov ecx, str._nopageant
mov eax, edi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x403dd0
test dl, dl
je 0x403dcc
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x403dd0
add eax, 2
add ecx, 2
test dl, dl
jne 0x403db0
xor eax, eax
jmp 0x403dd5
sbb eax, eax
or eax, 1
test eax, eax
jne 0x403df7
mov dword [esp + 0xc], 1
test esi, esi
jne 0x404aa4
push esi
lea edx, [esi + 0x1d]
mov ecx, ebx
call fcn.00410020
add esp, 4
mov ecx, str._no_trivial_auth
mov eax, edi
nop
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x403e20
test dl, dl
je 0x403e1c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x403e20
add eax, 2
add ecx, 2
test dl, dl
jne 0x403e00
xor eax, eax
jmp 0x403e25
sbb eax, eax
or eax, 1
test eax, eax
jne 0x403e48
mov dword [esp + 0xc], 1
test esi, esi
jne 0x404aa4
push 1
lea edx, [eax + 0x2c]
mov ecx, ebx
call fcn.00410020
add esp, 4
mov ecx, str._share
mov eax, edi
nop
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x403e70
test dl, dl
je 0x403e6c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x403e70
add eax, 2
add ecx, 2
test dl, dl
jne 0x403e50
xor eax, eax
jmp 0x403e75
sbb eax, eax
or eax, 1
test eax, eax
jne 0x403e98
mov dword [esp + 0xc], 1
test esi, esi
jne 0x404aa4
push 1
lea edx, [eax + 0x26]
mov ecx, ebx
call fcn.00410020
add esp, 4
mov ecx, str._noshare
mov eax, edi
nop
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x403ec0
test dl, dl
je 0x403ebc
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x403ec0
add eax, 2
add ecx, 2
test dl, dl
jne 0x403ea0
xor eax, eax
jmp 0x403ec5
sbb eax, eax
or eax, 1
test eax, eax
jne 0x403ee7
mov dword [esp + 0xc], 1
test esi, esi
jne 0x404aa4
push esi
lea edx, [eax + 0x26]
mov ecx, ebx
call fcn.00410020
add esp, 4
mov ecx, 0x44377c
mov eax, edi
nop
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x403f10
test dl, dl
je 0x403f0c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x403f10
add eax, 2
add ecx, 2
test dl, dl
jne 0x403ef0
xor eax, eax
jmp 0x403f15
sbb eax, eax
or eax, 1
test eax, eax
jne 0x403f38
mov dword [esp + 0xc], 1
test esi, esi
jne 0x404aa4
push 1
lea edx, [eax + 0x1e]
mov ecx, ebx
call fcn.00410020
add esp, 4
mov ecx, 0x443780
mov eax, edi
nop
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x403f60
test dl, dl
je 0x403f5c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x403f60
add eax, 2
add ecx, 2
test dl, dl
jne 0x403f40
xor eax, eax
jmp 0x403f65
sbb eax, eax
or eax, 1
test eax, eax
jne 0x403f87
mov dword [esp + 0xc], 1
test esi, esi
jne 0x404aa4
push esi
lea edx, [eax + 0x1e]
mov ecx, ebx
call fcn.00410020
add esp, 4
mov ecx, 0x443784
mov eax, edi
nop
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x403fb0
test dl, dl
je 0x403fac
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x403fb0
add eax, 2
add ecx, 2
test dl, dl
jne 0x403f90
xor eax, eax
jmp 0x403fb5
sbb eax, eax
or eax, 1
test eax, eax
jne 0x403fda
mov dword [esp + 0xc], 1
test esi, esi
jne 0x404aa4
push 1
mov edx, 0xb0
mov ecx, ebx
call fcn.00410020
add esp, 4
mov ecx, 0x443788
mov eax, edi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x404001
test dl, dl
je 0x403ffd
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x404001
add eax, 2
add ecx, 2
test dl, dl
jne 0x403fe1
xor eax, eax
jmp 0x404006
sbb eax, eax
or eax, 1
test eax, eax
jne 0x40402a
mov dword [esp + 0xc], 1
test esi, esi
jne 0x404aa4
push esi
mov edx, 0xb0
mov ecx, ebx
call fcn.00410020
add esp, 4
mov ecx, 0x44378c
mov eax, edi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x404051
test dl, dl
je 0x40404d
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x404051
add eax, 2
add ecx, 2
test dl, dl
jne 0x404031
xor eax, eax
jmp 0x404056
sbb eax, eax
or eax, 1
test eax, eax
jne 0x404078
mov dword [esp + 0xc], 1
test esi, esi
jne 0x404a7a
push esi
lea edx, [eax + 0x16]
mov ecx, ebx
call fcn.00410020
add esp, 4
mov ecx, 0x443790
mov eax, edi
nop
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4040a0
test dl, dl
je 0x40409c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4040a0
add eax, 2
add ecx, 2
test dl, dl
jne 0x404080
xor eax, eax
jmp 0x4040a5
sbb eax, eax
or eax, 1
test eax, eax
jne 0x4040c8
mov dword [esp + 0xc], 1
test esi, esi
jne 0x404a7a
push 1
lea edx, [eax + 0x16]
mov ecx, ebx
call fcn.00410020
add esp, 4
mov ecx, 0x443794
mov eax, edi
nop
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4040f0
test dl, dl
je 0x4040ec
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4040f0
add eax, 2
add ecx, 2
test dl, dl
jne 0x4040d0
xor eax, eax
jmp 0x4040f5
sbb eax, eax
or eax, 1
test eax, eax
jne 0x404118
mov dword [esp + 0xc], 1
test esi, esi
jne 0x404aa4
push 1
lea edx, [eax + 0x38]
mov ecx, ebx
call fcn.00410020
add esp, 4
mov ecx, 0x443798
mov eax, edi
nop
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x404140
test dl, dl
je 0x40413c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x404140
add eax, 2
add ecx, 2
test dl, dl
jne 0x404120
xor eax, eax
jmp 0x404145
sbb eax, eax
or eax, 1
test eax, eax
jne 0x404168
mov dword [esp + 0xc], 1
test esi, esi
jne 0x404aa4
push 1
lea edx, [eax + 0x17]
mov ecx, ebx
call fcn.00410020
add esp, 4
mov ecx, 0x44379c
mov eax, edi
nop
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x404190
test dl, dl
je 0x40418c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x404190
add eax, 2
add ecx, 2
test dl, dl
jne 0x404170
xor eax, eax
jmp 0x404195
sbb eax, eax
or eax, 1
test eax, eax
jne 0x4041b7
mov dword [esp + 0xc], 1
test esi, esi
jne 0x404aa4
push esi
lea edx, [eax + 0x24]
mov ecx, ebx
call fcn.00410060
add esp, 4
mov ecx, 0x4437a0
mov eax, edi
nop
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4041e0
test dl, dl
je 0x4041dc
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4041e0
add eax, 2
add ecx, 2
test dl, dl
jne 0x4041c0
xor eax, eax
jmp 0x4041e5
sbb eax, eax
or eax, 1
test eax, eax
jne 0x404208
mov dword [esp + 0xc], 1
test esi, esi
jne 0x404aa4
push 3
lea edx, [eax + 0x24]
mov ecx, ebx
call fcn.00410060
add esp, 4
mov ecx, 0x4437a4
mov eax, edi
nop
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x404230
test dl, dl
je 0x40422c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x404230
add eax, 2
add ecx, 2
test dl, dl
jne 0x404210
xor eax, eax
jmp 0x404235
sbb eax, eax
or eax, 1
test eax, eax
jne 0x40427a
mov esi, dword [esp + 0x14]
test esi, esi
je 0x404aaf
mov dword [esp + 0xc], 2
cmp dword [ebp + 8], eax
jne 0x404aa8
mov ecx, esi
call fcn.0040b600
mov esi, eax
mov edx, 0x21
push esi
mov ecx, ebx
call fcn.00410210
add esp, 4
mov ecx, esi
call fcn.0040b7d0
mov ecx, 0x4437a8
mov eax, edi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4042a1
test dl, dl
je 0x40429d
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4042a1
add eax, 2
add ecx, 2
test dl, dl
jne 0x404281
xor eax, eax
jmp 0x4042a6
sbb eax, eax
or eax, 1
test eax, eax
jne 0x4042eb
mov esi, dword [esp + 0x14]
test esi, esi
je 0x404aaf
mov dword [esp + 0xc], 2
cmp dword [ebp + 8], eax
jne 0x404aa8
mov ecx, esi
call fcn.0040b600
mov esi, eax
mov edx, 0x22
push esi
mov ecx, ebx
call fcn.00410210
add esp, 4
mov ecx, esi
call fcn.0040b7d0
mov ecx, 0x4437b0
mov eax, edi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x404312
test dl, dl
je 0x40430e
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x404312
add eax, 2
add ecx, 2
test dl, dl
jne 0x4042f2
xor eax, eax
jmp 0x404317
sbb eax, eax
or eax, 1
test eax, eax
je 0x40434f
mov ecx, str._ipv4
mov eax, edi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x404346
test dl, dl
je 0x404342
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x404346
add eax, 2
add ecx, 2
test dl, dl
jne 0x404326
xor eax, eax
jmp 0x40434b
sbb eax, eax
or eax, 1
test eax, eax
jne 0x404373
mov esi, dword [ebp + 8]
mov dword [esp + 0xc], 1
test esi, esi
jne 0x404a7a
push 1
lea edx, [esi + 3]
mov ecx, ebx
call fcn.00410060
add esp, 4
jmp 0x404376
mov esi, dword [ebp + 8]
mov ecx, 0x4437bc
mov eax, edi
nop dword [eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4043a0
test dl, dl
je 0x40439c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4043a0
add eax, 2
add ecx, 2
test dl, dl
jne 0x404380
xor eax, eax
jmp 0x4043a5
sbb eax, eax
or eax, 1
test eax, eax
je 0x4043dd
mov ecx, str._ipv6
mov eax, edi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4043d4
test dl, dl
je 0x4043d0
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4043d4
add eax, 2
add ecx, 2
test dl, dl
jne 0x4043b4
xor eax, eax
jmp 0x4043d9
sbb eax, eax
or eax, 1
test eax, eax
jne 0x4043fc
mov dword [esp + 0xc], 1
test esi, esi
jne 0x404a7a
push 2
lea edx, [esi + 3]
mov ecx, ebx
call fcn.00410060
add esp, 4
mov ecx, str._sercfg
mov eax, edi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x404423
test dl, dl
je 0x40441f
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x404423
add eax, 2
add ecx, 2
test dl, dl
jne 0x404403
xor eax, eax
jmp 0x404428
sbb eax, eax
or eax, 1
mov esi, dword [esp + 0x14]
test eax, eax
jne 0x4045f3
test esi, esi
je 0x404aaf
mov dword [esp + 0xc], 2
cmp dword [ebp + 8], eax
jne 0x404469
lea edx, [eax + 2]
mov ecx, ebx
call fcn.00410000
cmp eax, 5
jne 0x404b6f
jmp 0x404491
mov esi, dword [esp + 0x14]
jmp 0x404469
mov esi, ebx
push 1
mov edx, esi
mov ecx, edi
call fcn.00402ee0
add esp, 4
mov eax, 2
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x1028]
xor ecx, esp
call fcn.0043505d
mov esp, ebp
pop ebp
ret
cmp byte [esi], 0
mov ebx, esi
je 0x4045f3
nop dword [eax]
push 0x2c
push ebx
call dword [sym.imp.VCRUNTIME140.dll_strchr]
add esp, 8
test eax, eax
jne 0x4044c8
mov esi, ebx
lea ecx, [esi + 1]
mov al, byte [esi]
inc esi
test al, al
jne 0x4044b5
sub esi, ecx
mov dword [esp + 0x18], 0
jmp 0x4044d7
mov esi, eax
mov byte [eax], 0
sub esi, ebx
mov dword [esp + 0x18], 1
cmp esi, 1
jne 0x40459a
movsx ecx, byte [ebx]
mov dword [esp + 0x20], ecx
lea eax, [ecx - 0x31]
cmp eax, 0x42
ja case.0x4044fa.51
movzx eax, byte [eax + 0x404bc0]
jmp dword [eax*4 + 0x404b90]
mov eax, dword [esp + 0x20]
mov edx, 0x47
lea eax, [eax*2 - 0x60]
jmp 0x4045d1
mov eax, dword [esp + 0x20]
mov edx, 0x46
add eax, 0xffffffd0
jmp 0x4045d1
mov edx, 0x48
xor eax, eax
jmp 0x4045d1
mov edx, 0x48
lea eax, [edx - 0x47]
jmp 0x4045d1
mov edx, 0x48
lea eax, [edx - 0x46]
jmp 0x4045d1
mov edx, 0x48
lea eax, [edx - 0x45]
jmp 0x4045d1
mov edx, 0x48
lea eax, [edx - 0x44]
jmp 0x4045d1
mov edx, 0x49
xor eax, eax
jmp 0x4045d1
mov edx, 0x49
lea eax, [edx - 0x48]
jmp 0x4045d1
mov edx, 0x49
lea eax, [edx - 0x47]
jmp 0x4045d1
mov edx, 0x49
lea eax, [edx - 0x46]
jmp 0x4045d1
cmp esi, 3
jne 0x4045ba
push esi
push 0x443834
push ebx
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strncmp]
add esp, 0xc
test eax, eax
jne 0x4045ba
lea edx, [esi + 0x44]
mov eax, esi
jmp 0x4045d1
push ebx
call dword [sym.imp.api_ms_win_crt_convert_l1_1_0.dll_atoi]
add esp, 4
test eax, eax
je 0x404b84
mov edx, 0x45
mov ecx, dword [esp + 0x10]
push eax
call fcn.00410060
mov eax, dword [esp + 0x1c]
add esp, 4
add eax, esi
add ebx, eax
cmp byte [ebx], 0
jne 0x4044a0
mov esi, dword [esp + 0x14]
mov ecx, str._sessionlog
mov eax, edi
nop word [eax + eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x404620
test dl, dl
je 0x40461c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x404620
add eax, 2
add ecx, 2
test dl, dl
jne 0x404600
xor eax, eax
jmp 0x404625
sbb eax, eax
or eax, 1
test eax, eax
jne 0x40467d
test esi, esi
je 0x404aaf
mov dword [esp + 0xc], 2
cmp dword [ebp + 8], eax
jne 0x404aa8
mov ecx, esi
call fcn.0040b600
mov ebx, dword [esp + 0x10]
mov esi, eax
push esi
mov edx, 0x87
mov ecx, ebx
call fcn.00410210
add esp, 4
mov edx, 0x88
mov ecx, ebx
push 2
call fcn.00410060
add esp, 4
mov ecx, esi
call fcn.0040b7d0
jmp 0x404681
mov ebx, dword [esp + 0x10]
mov ecx, str._sshlog
mov eax, edi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4046a8
test dl, dl
je 0x4046a4
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4046a8
add eax, 2
add ecx, 2
test dl, dl
jne 0x404688
xor eax, eax
jmp 0x4046ad
sbb eax, eax
or eax, 1
test eax, eax
je 0x4046ed
mov ecx, str._sshrawlog
mov eax, edi
nop dword [eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4046e0
test dl, dl
je 0x4046dc
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4046e0
add eax, 2
add ecx, 2
test dl, dl
jne 0x4046c0
xor eax, eax
jmp 0x4046e5
sbb eax, eax
or eax, 1
test eax, eax
jne 0x404776
mov esi, dword [esp + 0x14]
test esi, esi
je 0x404aaf
cmp dword [ebp + 8], 0
mov dword [esp + 0xc], 2
jne 0x404aa8
mov ecx, esi
call fcn.0040b600
mov esi, eax
mov edx, 0x87
push esi
mov ecx, ebx
call fcn.00410210
add esp, 4
mov edx, str._sshlog
mov ecx, edi
nop dword [eax + eax]
mov al, byte [ecx]
cmp al, byte [edx]
jne 0x404750
test al, al
je 0x40474c
mov al, byte [ecx + 1]
cmp al, byte [edx + 1]
jne 0x404750
add ecx, 2
add edx, 2
test al, al
jne 0x404730
xor ecx, ecx
jmp 0x404755
sbb ecx, ecx
or ecx, 1
xor eax, eax
mov edx, 0x88
test ecx, ecx
mov ecx, ebx
setne al
add eax, 3
push eax
call fcn.00410060
add esp, 4
mov ecx, esi
call fcn.0040b7d0
mov ecx, str._logoverwrite
mov eax, edi
nop dword [eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4047a0
test dl, dl
je 0x40479c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4047a0
add eax, 2
add ecx, 2
test dl, dl
jne 0x404780
xor eax, eax
jmp 0x4047a5
sbb eax, eax
or eax, 1
test eax, eax
jne 0x4047c7
lea esi, [eax + 1]
cmp dword [ebp + 8], eax
jne 0x404aa4
push esi
mov edx, 0x89
mov ecx, ebx
call fcn.00410060
add esp, 4
jmp 0x4047cb
mov esi, dword [esp + 0xc]
mov ecx, str._logappend
mov eax, edi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4047f2
test dl, dl
je 0x4047ee
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4047f2
add eax, 2
add ecx, 2
test dl, dl
jne 0x4047d2
xor eax, eax
jmp 0x4047f7
sbb eax, eax
or eax, 1
test eax, eax
jne 0x404817
lea esi, [eax + 1]
cmp dword [ebp + 8], eax
jne 0x404aa4
push eax
mov edx, 0x89
mov ecx, ebx
call fcn.00410060
add esp, 4
mov ecx, str._proxycmd
mov eax, edi
nop
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x404840
test dl, dl
je 0x40483c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x404840
add eax, 2
add ecx, 2
test dl, dl
jne 0x404820
xor eax, eax
jmp 0x404845
sbb eax, eax
or eax, 1
test eax, eax
jne 0x40488d
mov esi, dword [esp + 0x14]
test esi, esi
je 0x404aaf
mov dword [esp + 0xc], 2
cmp dword [ebp + 8], eax
jne 0x404aa8
push 5
lea edx, [eax + 0xd]
mov ecx, ebx
call fcn.00410060
add esp, 4
mov edx, 0x12
mov ecx, ebx
push esi
call fcn.004100a0
mov esi, dword [esp + 0x10]
add esp, 4
mov ecx, str._batch
mov eax, edi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4048b4
test dl, dl
je 0x4048b0
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4048b4
add eax, 2
add ecx, 2
test dl, dl
jne 0x404894
xor eax, eax
jmp 0x4048b9
sbb eax, eax
or eax, 1
mov ebx, dword [ebp + 8]
test eax, eax
jne 0x4048d2
lea esi, [eax + 1]
test ebx, ebx
jne 0x404aa4
mov byte [0x44b474], 1
mov ecx, 0x4438ac
mov eax, edi
nop dword [eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x404900
test dl, dl
je 0x4048fc
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x404900
add eax, 2
add ecx, 2
test dl, dl
jne 0x4048e0
xor eax, eax
jmp 0x404905
sbb eax, eax
or eax, 1
test eax, eax
je 0x404939
mov ecx, str._legacy_stdio_prompts
mov eax, edi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x404930
test dl, dl
je 0x40492c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x404930
add eax, 2
add ecx, 2
test dl, dl
jne 0x404910
xor eax, eax
jmp 0x404935
sbb eax, eax
or eax, 1
test eax, eax
jne 0x40494d
mov esi, 1
test ebx, ebx
jne 0x404aa4
mov byte [0x44b4ba], 1
mov ecx, 0x4438dc
mov eax, edi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x404974
test dl, dl
je 0x404970
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x404974
add eax, 2
add ecx, 2
test dl, dl
jne 0x404954
xor eax, eax
jmp 0x404979
sbb eax, eax
or eax, 1
test eax, eax
je 0x4049ad
mov ecx, str._legacy_charset_handling
mov eax, edi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4049a4
test dl, dl
je 0x4049a0
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4049a4
add eax, 2
add ecx, 2
test dl, dl
jne 0x404984
xor eax, eax
jmp 0x4049a9
sbb eax, eax
or eax, 1
test eax, eax
jne 0x4049c0
mov esi, 1
test ebx, ebx
jne 0x404aa4
mov byte [0x44b0f4], bl
mov ecx, 0x443914
mov eax, edi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4049e7
test dl, dl
je 0x4049e3
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4049e7
add eax, 2
add ecx, 2
test dl, dl
jne 0x4049c7
xor eax, eax
jmp 0x4049ec
sbb eax, eax
or eax, 1
test eax, eax
je 0x404a59
mov ecx, str._restrict_acl
mov eax, edi
nop dword [eax + eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x404a20
test dl, dl
je 0x404a1c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x404a20
add eax, 2
add ecx, 2
test dl, dl
jne 0x404a00
xor eax, eax
jmp 0x404a25
sbb eax, eax
or eax, 1
test eax, eax
je 0x404a59
mov eax, str._restrictacl
nop
mov cl, byte [edi]
cmp cl, byte [eax]
jne 0x404a50
test cl, cl
je 0x404a4c
mov cl, byte [edi + 1]
cmp cl, byte [eax + 1]
jne 0x404a50
add edi, 2
add eax, 2
test cl, cl
jne 0x404a30
xor eax, eax
jmp 0x404a55
sbb eax, eax
or eax, 1
test eax, eax
jne 0x404a63
mov esi, 1
call fcn.0040bc70
mov eax, esi
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x1028]
xor ecx, esp
call fcn.0043505d
mov esp, ebp
pop ebp
ret
push 1
mov edx, dword [esp + 0x18]
mov ecx, edi
call fcn.00402ee0
add esp, 4
mov eax, 1
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x1028]
xor ecx, esp
call fcn.0043505d
mov esp, ebp
pop ebp
ret
push 0
jmp 0x404a7c
push 0
jmp 0x40446b
mov ecx, dword [esp + 0x1034]
mov eax, 0xfffffffe
pop edi
pop esi
pop ebx
xor ecx, esp
call fcn.0043505d
mov esp, ebp
pop ebp
ret
push edi
sub eax, edi
push eax
push 0x443504
call fcn.00410be0
add esp, 0xc
push eax
push str.unrecognised_protocol_prefix__s
call fcn.0040bdf0
mov edx, dword [esp + 0x14]
push edx
push str._s_is_not_a_valid_format_for_a_manual_host_key_specification
call fcn.0040bdf0
movsx eax, byte [esp + 0x1f]
push eax
push str.__c_expects_at_least_two_colons_in_its_argument
call fcn.0040bdf0
call fcn.00413280
push str._nc_expects_argument_of_form_host:port
call fcn.0040bdf0
mov edx, dword [esp + 0x14]
push edx
push str.unable_to_open_command_file___s_
call fcn.0040bdf0
push str.the__pw_option_can_only_be_used_with_the_SSH_protocol
call fcn.0040bdf0
push str.the__pwfile_option_can_only_be_used_with_the_SSH_protocol
call fcn.0040bdf0
mov edx, dword [esp + 0x14]
push edx
push str.unable_to_open_password_file__s
call fcn.0040bdf0
call fcn.00413280
test eax, eax
je 0x404b58
push esi
call dword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
add esp, 4
xor esi, esi
mov edx, dword [esp + 0x14]
push edx
push str.unable_to_read_a_password_from_file__s
mov dword [0x44b4ac], esi
call fcn.0040bdf0
push str.the__sercfg_option_can_only_be_used_with_the_serial_protocol
call fcn.0040bdf0
push ecx
push str.Unrecognised_suboption___sercfg__c_
call fcn.0040bdf0
push ebx
push str.Unrecognised_suboption___sercfg__s_
call fcn.0040bdf0
nop
add dword [ebp + 0x40], eax
add byte [esi], dl
inc ebp
inc eax
add byte [ebp + 0x67004045], cl
inc ebp
inc eax
add byte [eax + 0x73004045], al
inc ebp
inc eax
add byte [eax + 0x45], al
inc eax
add byte [ebp + 0x45], cl
inc eax
add byte [edi], ah
inc ebp
inc eax
add byte [ebx], dh
inc ebp
inc eax
add byte [edx + 0x45], bl
inc eax
add byte [ecx + 0x4b], bh
inc eax
add byte [eax], al
add byte [ebx], cl
or eax, dword [ecx]
add dword [ecx], eax
add dword [ecx], eax
or ecx, dword [ebx]
or ecx, dword [ebx]
or ecx, dword [ebx]
or ecx, dword [ebx]
or ecx, dword [ebx]
add cl, byte [ebx]
or ecx, dword [ebx]
or ecx, dword [ebx]
or ecx, dword [ebx]
or ecx, dword [ebx]
add ecx, dword [ebx]
or ecx, dword [ebx]
add al, 11
or ecx, dword [ebx]
or ecx, dword [ebx]
add eax, 185273099
or ecx, dword [ebx]
or ecx, dword [ebx]
or ecx, dword [ebx]
or ecx, dword [ebx]
push es
or ecx, dword [ebx]
or ecx, dword [ebx]
or ecx, dword [ebx]
or eax, dword [edi]
or byte [ecx], cl
or ecx, dword [ebx]
or ecx, dword [edx]
int3