Function at 0x402948
Capabilities:
Read file on windows

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x1bc
mov eax, dword [0x4133f8]
xor eax, esp
mov dword [esp + 0x1b8], eax
mov eax, dword [ebp + 0xc]
push ebx
push esi
push edi
xor ebx, ebx
lea ecx, [esp + 0x30]
push ecx
push 0x101
mov dword [esp + 0x14], eax
mov dword [esp + 0x20], ebx
mov dword [esp + 0x34], ebx
mov dword [esp + 0x2c], ebx
mov dword [esp + 0x24], ebx
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x30], ebx
call sub.WS2_32.dll_WSAStartup
test eax, eax
jne 0x402575
mov eax, dword [esp + 0x30]
cmp al, 1
jne 0x402570
shr eax, 8
cmp al, 1
je 0x402575
call sub.WS2_32.dll_WSACleanup
push 0x14
call fcn.0040356b
add esp, 4
push 0x14
cmp eax, ebx
je 0x402efa
xor ecx, ecx
mov dword [eax], ecx
mov dword [eax + 4], ecx
mov dword [eax + 8], ecx
mov dword [eax + 0xc], ecx
mov dword [eax + 0x10], ecx
mov dword [0x414af0], eax
call fcn.0040356b
add esp, 4
cmp eax, ebx
je 0x402f97
xor ecx, ecx
mov dword [eax], ecx
mov dword [eax + 4], ecx
mov dword [eax + 8], ecx
mov dword [eax + 0xc], ecx
push 0x2004
mov dword [eax + 0x10], ecx
mov dword [0x414af4], eax
call fcn.0040356b
add esp, 4
mov esi, eax
push 0x2004
cmp esi, ebx
je 0x402efa
push ebx
push esi
call fcn.0040a730
add esp, 0xc
push 0x2004
mov dword [0x415c88], esi
call fcn.0040356b
add esp, 4
mov esi, eax
push 0x2004
cmp esi, ebx
je 0x402efa
push ebx
push esi
call fcn.0040a730
add esp, 0xc
push 0x108
mov dword [0x415ce0], esi
call fcn.0040356b
add esp, 4
mov esi, eax
push 0x108
cmp esi, ebx
je 0x402efa
push ebx
push esi
call fcn.0040a730
add esp, 0xc
push 0x108
mov dword [0x415ce4], esi
call fcn.0040356b
add esp, 4
mov esi, eax
push 0x108
cmp esi, ebx
je 0x402efa
push ebx
push esi
call fcn.0040a730
add esp, 0xc
push 0x4c
mov dword [0x415c84], esi
call fcn.0040356b
add esp, 4
mov esi, eax
push 0x4c
cmp esi, ebx
je 0x402efa
push ebx
push esi
call fcn.0040a730
add esp, 0xc
push 1
mov dword [0x414afc], esi
call fcn.0040356b
add esp, 4
mov dword [0x415ce8], eax
mov byte [eax], 1
call fcn.00403db7
mov dword [eax], ebx
mov dword [0x41401c], 4
lea esp, [esp]
cmp dword [ebp + 8], 1
jne 0x402802
mov edx, dword [esp + 0xc]
mov esi, dword [edx]
push 0x204
call fcn.0040356b
add esp, 4
mov edi, eax
push 0x204
cmp edi, ebx
je 0x402efa
push ebx
push edi
call fcn.0040a730
add esp, 0xc
push 0x2004
mov dword [esp + 0x10], edi
mov dword [edi], esi
call fcn.0040356b
add esp, 4
mov esi, eax
push 0x2004
cmp esi, ebx
je 0x402efa
push ebx
push esi
call fcn.0040a730
add esp, 0xc
push str.Cmd_line:
mov dword [edi + 4], esi
call fcn.004038c5
add eax, 0x40
push eax
call fcn.00403f24
call fcn.004038c5
add eax, 0x40
push eax
call fcn.00403cf8
add esp, 0xc
push 0x2000
push esi
push ebx
call fcn.0040b3b4
add esp, 0xc
mov dword [0x414adc], eax
cmp eax, ebx
jbe 0x402eae
cmp eax, 0x2000
jbe 0x402770
xor ecx, ecx
jmp 0x402790
mov edx, eax
cmp edx, ebx
mov ecx, esi
jle 0x402783
cmp byte [ecx], 0xa
je 0x4027ea
dec edx
inc ecx
cmp edx, ebx
jg 0x402778
mov ecx, eax
cmp ecx, ebx
je 0x402790
sub eax, ecx
mov dword [0x414adc], eax
cmp eax, ebx
je 0x4027a6
push eax
mov eax, dword [0x415c88]
add esi, ecx
push esi
push eax
call fcn.0040be40
add esp, 0xc
mov ecx, dword [edi + 4]
push 0xa
push ecx
call fcn.00403ab0
add esp, 8
cmp eax, ebx
je 0x4027bb
mov byte [eax], 0
mov edx, dword [edi + 4]
push 0xd
push edx
call fcn.00403ab0
add esp, 8
cmp eax, ebx
je 0x4027d0
mov byte [eax], 0
mov eax, dword [edi + 4]
inc eax
cmp byte [eax], 0
mov ecx, 2
je 0x4027ff
mov edi, edi
cmp byte [eax], 0x20
jne 0x4027ef
mov byte [eax], 0
jmp 0x4027f9
sub ecx, esi
inc ecx
jmp 0x402785
cmp byte [eax - 1], 0
jne 0x4027f9
mov dword [edi + ecx*4], eax
inc ecx
inc eax
cmp byte [eax], 0
jne 0x4027e0
mov dword [ebp + 8], ecx
mov edi, dword [esp + 0xc]
mov eax, dword [ebp + 8]
push edi
push eax
call fcn.00403130
mov ebx, eax
add esp, 8
cmp ebx, 0xffffffff
je 0x402a57
mov esi, 1
lea eax, [ebx - 0x47]
cmp eax, 0x33
ja case.0x402836.72
movzx ecx, byte [eax + 0x402fec]
jmp dword [ecx*4 + 0x402fa4]
add word [0x414b0c], si
mov dword [esp + 0x28], esi
jmp 0x402a3f
call dword [sym.imp.KERNEL32.dll_FreeConsole]
jmp 0x402a3f
mov edx, dword [0x414b2c]
push edx
call fcn.00403d6a
add esp, 4
test eax, eax
je 0x402ec2
mov ecx, eax
and ecx, 0x1c
cmp eax, ecx
jne 0x402ec2
mov dword [0x41401c], eax
jmp 0x402a3f
cmp dword [0x414ad8], 8
jg 0x402ecd
cmp dword [0x414af8], 0
jne 0x4028c8
push 0x2c
call fcn.0040356b
add esp, 4
mov esi, eax
push 0x2c
test esi, esi
je 0x402efa
push 0
push esi
call fcn.0040a730
mov dword [0x414af8], esi
add esp, 0xc
mov esi, 1
movzx eax, word [0x414b10]
mov ecx, dword [0x414b2c]
call fcn.004013e0
test eax, eax
je 0x4028ed
mov edx, dword [0x414af8]
mov ecx, dword [0x414ad8]
mov dword [edx + ecx*4], eax
add dword [0x414ad8], esi
jmp 0x402a3f
mov edx, dword [0x414b2c]
push edx
call fcn.00403d6a
and eax, 0xffff
imul eax, eax, 0x3e8
add esp, 4
mov dword [0x414b08], eax
test eax, eax
jne 0x402a3f
mov edx, dword [0x414b2c]
push edx
push str.invalid_interval_time__s
call fcn.00401340
add word [0x414b0c], si
jmp 0x402a3f
add word [0x414b10], si
jmp 0x402a3f
mov eax, dword [0x414b2c]
add word [0x414b14], si
mov dword [0x414b00], eax
jmp 0x402a3f
mov ecx, dword [0x414b2c]
xor eax, eax
call fcn.00401650
movzx eax, ax
mov dword [esp + 0x1c], eax
test ax, ax
jne 0x402a3f
mov eax, dword [0x414b2c]
push eax
push str.invalid_local_port__s
call fcn.00401340
add word [0x414b18], si
jmp 0x402a3f
movzx eax, word [0x414b10]
mov ecx, dword [0x414b2c]
call fcn.004013e0
add eax, 0x1c0
mov dword [esp + 0x2c], eax
jmp 0x402a3f
add word [0x414b1c], si
jmp 0x402a3f
add word [0x414b20], si
jmp 0x402a3f
mov ecx, dword [0x414b2c]
push ecx
call fcn.00403d6a
mov edi, eax
add esp, 4
mov dword [0x414b24], edi
test edi, edi
jbe 0x402ee7
push 0xc
call fcn.0040356b
add esp, 4
mov esi, eax
push 0xc
test esi, esi
je 0x402efa
xor eax, eax
mov dword [esi], eax
mov dword [esi + 4], eax
mov dword [esi + 8], eax
mov dword [0x414ae8], esi
call fcn.0040356b
add esp, 4
test eax, eax
je 0x402ef8
xor ecx, ecx
mov dword [eax], ecx
mov dword [eax + 4], ecx
mov dword [eax + 8], ecx
mov dword [esi], edi
mov edi, dword [esp + 0xc]
mov dword [0x414aec], eax
lea esi, [ecx + 1]
jmp 0x402a3f
add word [0x414b28], si
mov edx, dword [ebp + 8]
push edi
push edx
call fcn.00403130
mov ebx, eax
add esp, 8
cmp ebx, 0xffffffff
jne 0x402823
cmp word [0x414b18], 0
je 0x402a9f
push 0
call fcn.00404311
add esp, 4
push eax
call fcn.00404040
add esp, 4
push 0x10004
call fcn.0040356b
add esp, 4
mov esi, eax
push 0x10004
test esi, esi
je 0x402efa
push 0
push esi
call fcn.0040a730
add esp, 0xc
mov dword [esp + 0x14], esi
cmp word [0x414b14], 0
je 0x402af5
mov eax, dword [0x414b00]
push 0x1b4
push 0x301
push eax
call fcn.0040e8e3
add esp, 0xc
mov dword [0x414ad4], eax
test eax, eax
jle 0x402f19
push 0x68
call fcn.0040356b
add esp, 4
mov esi, eax
push 0x68
test esi, esi
je 0x402efa
push 0
push esi
call fcn.0040a730
add esp, 0xc
mov dword [0x414b00], esi
mov ecx, dword [0x414b30]
cmp dword [edi + ecx*4], 0
je 0x402b16
movzx eax, word [0x414b10]
mov ecx, dword [edi + ecx*4]
call fcn.004013e0
mov dword [esp + 0x18], eax
jmp 0x402b1a
mov eax, dword [esp + 0x18]
test eax, eax
je 0x402b2d
add eax, 0x1c0
je 0x402b2d
mov esi, eax
mov dword [esp + 0x24], esi
jmp 0x402b31
mov esi, dword [esp + 0x24]
test esi, esi
je 0x402b3b
inc dword [0x414b30]
call fcn.00403db7
cmp word [0x414b0c], 0
mov dword [eax], 0
je 0x402bdb
mov ecx, dword [0x414b30]
xor eax, eax
cmp dword [edi + ecx*4], eax
je 0x402b75
mov ecx, dword [edi + ecx*4]
call fcn.00401650
movzx eax, ax
test ax, ax
je 0x402f2a
movzx ecx, word [esp + 0x1c]
mov edx, dword [esp + 0x2c]
push ecx
movzx eax, ax
push edx
push eax
push esi
call fcn.00401a50
add esp, 0x10
mov dword [0x414004], eax
test eax, eax
jle 0x402f43
call fcn.00402000
mov edi, 1
mov esi, eax
cmp word [0x414b20], di
jbe 0x402bca
mov ecx, dword [0x414ae0]
mov edx, dword [0x414ae4]
push ecx
push edx
push str._sent__d__rcvd__d
call fcn.004012a0
add esp, 0xc
cmp dword [esp + 0x28], edi
jne 0x402f3d
xor ebx, ebx
jmp 0x4026c0
test esi, esi
je 0x402f4d
mov eax, dword [0x414b30]
cmp dword [edi + eax*4], 0
lea eax, [edi + eax*4]
je 0x402f57
cmp dword [eax + 4], 0
je 0x402c04
xor ecx, ecx
mov word [0x414020], cx
movzx edx, word [esp + 0x1c]
mov dword [esp + 0x20], edx
lea ecx, [ecx]
mov eax, dword [eax]
push 0x2d
push eax
xor edi, edi
call fcn.00403ab0
mov esi, eax
add esp, 8
test esi, esi
je 0x402c3e
mov byte [esi], 0
inc esi
xor eax, eax
mov ecx, esi
call fcn.00401650
movzx edi, ax
test di, di
je 0x402f61
mov ecx, dword [0x414b30]
mov esi, dword [esp + 0xc]
mov ecx, dword [esi + ecx*4]
xor eax, eax
call fcn.00401650
movzx eax, ax
mov dword [esp + 0x10], eax
test ax, ax
je 0x402f6c
cmp di, ax
jbe 0x402d62
xor edx, edx
mov word [0x414020], dx
movzx esi, di
cmp word [0x414b18], dx
je 0x402c9d
movzx esi, word [esp + 0x10]
mov edx, dword [esp + 0x14]
movzx eax, di
call fcn.004017d0
mov esi, dword [esp + 0x14]
call fcn.00401780
movzx esi, ax
cmp word [esp + 0x10], si
ja 0x402e4c
cmp word [esp + 0x1c], 0
jne 0x402cd6
cmp word [0x414b18], 0
je 0x402cd6
call fcn.00404052
movzx eax, ax
mov ecx, 0x2000
mov dword [esp + 0x20], eax
cmp ax, cx
jae 0x402cd6
add eax, ecx
mov dword [esp + 0x20], eax
movzx eax, si
xor ecx, ecx
call fcn.00401650
movzx edx, word [esp + 0x20]
mov ebx, dword [esp + 0x24]
movzx esi, ax
mov eax, dword [esp + 0x2c]
push edx
movzx edi, si
push eax
push edi
push ebx
call fcn.00401820
add esp, 0x10
mov dword [0x414004], eax
test eax, eax
jle 0x402d6c
cmp word [0x414b28], 0
je 0x402d2a
cmp word [0x414b1c], 0
je 0x402d2a
push ebx
call fcn.00401df0
add esp, 4
mov dword [0x414004], eax
test eax, eax
jle 0x402d6c
mov eax, dword [esp + 0x18]
mov edx, dword [0x414afc]
push edi
lea ecx, [eax + 0x100]
push ecx
push eax
push str._s___s___d___s__open
xor ebx, ebx
call fcn.004012a0
add esp, 0x10
cmp word [0x414b28], bx
jne 0x402db0
call fcn.00402000
mov ebx, eax
jmp 0x402db0
movzx esi, word [esp + 0x10]
jmp 0x402ca8
cmp word [0x414020], 0
mov ebx, 1
jne 0x402d90
cmp word [0x414b20], bx
ja 0x402d90
call sub.WS2_32.dll_WSAGetLastError
cmp eax, 0x274d
je 0x402db0
mov eax, dword [esp + 0x18]
push edi
lea edx, [eax + 0x100]
push edx
mov edx, dword [0x414afc]
push eax
push str._s___s___d___s_
call fcn.004012a0
add esp, 0x10
mov eax, dword [0x414004]
push 2
push eax
call sub.WS2_32.dll_shutdown
mov ecx, dword [0x414004]
push ecx
call sub.WS2_32.dll_closesocket
mov eax, dword [0x414b08]
test eax, eax
je 0x402ddb
push eax
call fcn.00403a7a
add esp, 4
cmp word [0x414b18], 0
je 0x402e3b
mov edi, dword [esp + 0x14]
mov esi, 0x11170
mov edi, edi
call fcn.00404052
and eax, 0xffff
cmp byte [eax + edi], 1
je 0x402e1d
sub esi, 1
jne 0x402df0
mov eax, 0xffff
lea ebx, [ebx]
cmp byte [eax + edi], 1
je 0x402e2a
sub eax, 1
jne 0x402e10
jmp 0x402e2e
mov byte [eax + edi], 2
test eax, eax
je 0x402e05
movzx esi, ax
jmp 0x402e41
mov byte [eax + edi], 2
test eax, eax
je 0x402e37
movzx esi, ax
jmp 0x402e41
xor esi, esi
jmp 0x402e41
add esi, 0xffff
cmp word [esp + 0x10], si
jbe 0x402ca8
mov eax, dword [0x414b30]
mov edx, dword [esp + 0xc]
inc eax
cmp dword [edx + eax*4], 0
mov dword [0x414b30], eax
lea eax, [edx + eax*4]
jne 0x402c10
call fcn.00403db7
cmp word [0x414b20], 1
mov dword [eax], 0
jbe 0x402e97
mov eax, dword [0x414ae0]
mov ecx, dword [0x414ae4]
push eax
push ecx
push str.sent__d__rcvd__d
call fcn.004012a0
add esp, 0xc
call sub.WS2_32.dll_WSACleanup
cmp dword [esp + 0x28], 1
jne 0x402f80
xor ebx, ebx
jmp 0x4026c0
push str.wrong
call fcn.00401340
push str.all_A_records_NIY
call fcn.00401340
push eax
push str.invalid_hop_pointer__d__must_be_multiple_of_4___28
call fcn.00401340
push str.too_many__g_hops
call fcn.00401340
call fcn.00403db7
mov dword [eax], 0
call 0x403020
mov ecx, dword [0x414b2c]
push ecx
push str.invalid_wait_time__s
call fcn.00401340
push 0xc
push str.Hmalloc__d_failed
call fcn.00401340
call fcn.00403db7
push str.nc__h_for_help
mov dword [eax], 0
call fcn.00401340
mov edx, dword [0x414b00]
push edx
push str.cant_open__s
call fcn.00401340
mov eax, dword [0x414b30]
mov ecx, dword [edi + eax*4]
push ecx
push str.invalid_port__s
call fcn.00401340
push esi
call fcn.00404602
push str.no_connection
call fcn.00401340
push str.no_destination
call fcn.00401340
push str.no_port_s__to_connect_to
call fcn.00401340
push esi
push str.invalid_port__s
call fcn.00401340
mov edx, dword [0x414b30]
mov eax, dword [esi + edx*4]
push eax
push str.invalid_port__s
call fcn.00401340
cmp word [0x414020], 0
je 0x402f90
push ebx
call fcn.00404602
push 0
call fcn.00404602
push 0x14
push str.Hmalloc__d_failed
call fcn.00401340
nop
pop eax
sub byte [eax], al
cmp eax, 0xb8004028
inc eax
add byte [ebp + 0x28], cl
inc eax
add byte [esi - 0x28ffbfd8], al
inc eax
add al, bh
sub byte [eax], al
xor byte [ecx], ch
inc eax
add byte [ecx + ebp], bh
inc eax
add byte [eax + 0x29], cl
inc eax
add byte [esi + 0x29], bl
inc eax
add byte [ebx - 0x68ffbfd7], cl
sub dword [eax], eax
mov bh, 0x29
inc eax
add al, al
sub dword [eax], eax
leave
sub dword [eax], eax
cmp byte [edx], ch
inc eax
add byte [edi + ebp], al
inc eax
add byte [eax], al
adc dword [ecx], edx
adc dword [ecx], edx
add dword [ecx], edx
adc dword [ecx], edx
adc dword [ecx], edx
adc dword [ecx], edx
adc dword [ecx], edx
adc dword [ecx], edx
adc dword [ecx], edx
adc dword [ecx], edx
adc dword [ecx], edx
adc dword [ecx], edx
adc dword [edx], eax
adc dword [ecx], edx
add edx, dword [ecx]
adc dword [eax + 118558982], eax
adc dword [eax], ecx
or dword [edx], ecx
adc dword [ebx], ecx
or al, 17
or eax, 286330638
adc byte [eax + 1], bh
push str._v1.11_NT_www.vulnwatch.org_netcat___nconnect_to_somewhere:_tnc___options__hostname_port_s___ports__...__nlisten_for_inbound:_tnc__l__p_port__options___hostname___port__noptions:
mov word [0x414b20], ax
call fcn.004012a0
push str._t_d_t_tdetach_from_console__background_mode_n
call fcn.004012a0
push str._t_g_gateway_tsource_routing_hop_point_s___up_to_8_n_t_G_num_t_tsource_routing_pointer:_4__8__12__..._n_t_h_t_tthis_cruft_n_t_i_secs_t_tdelay_interval_for_lines_sent__ports_scanned_n_t_l_t_tlisten_mode__for_inbound_connects_n_t_L_t_tlisten_harder__re_listen_on_socket_close_n_t_n_t_tnumeric_only_IP_addresses__no_DNS_n_t_o_file_t_thex_dump_of_traffic_n_t_p_port_t_tlocal_port_number_n_t_r_t_trandomize_local_and_remote_ports_n_t_s_addr_t_tlocal_source_address
call fcn.004012a0
push str._t_u_t_tUDP_mode_n_t_v_t_tverbose__use_twice_to_be_more_verbose__n_t_w_secs_t_ttimeout_for_connects_and_final_net_reads_n_t_z_t_tzero_I_O_mode__used_for_scanning_
call fcn.004012a0
add esp, 0x10
push str.port_numbers_can_be_individual_or_ranges:_m_n__inclusive_
call fcn.00401340
int3