E00405282(signed int __ecx, void* __edx, void* __edi, void* __esp, long long __rax, signed long long __rbx, void* __rcx, signed long long __rdx, void* __rsi, void* __r8, signed int _a8, void* _a16) {
void* _v32;
void* _v40;
void* _v48;
signed int _v50;
signed short _v52;
signed int _v54;
signed int _v56;
signed long long _v64;
signed int _v68;
long long _v80;
signed int _v82;
long long _v120;
signed int _t123;
signed int _t147;
signed int _t148;
void* _t163;
signed int _t166;
signed int _t173;
signed int _t175;
signed int _t177;
signed int _t206;
intOrPtr _t212;
signed int _t226;
void* _t294;
signed int _t295;
signed int _t296;
void* _t297;
signed int _t298;
void* _t299;
long long _t336;
signed int* _t338;
signed long long _t339;
signed int* _t340;
signed long long _t344;
signed long long _t347;
signed long long _t348;
intOrPtr _t351;
signed long long _t355;
signed long long _t358;
signed long long _t361;
signed int _t367;
signed long long _t369;
signed int _t376;
signed int* _t377;
signed long long _t381;
intOrPtr* _t383;
long long _t384;
long long* _t387;
signed long long _t407;
long long _t417;
long long _t420;
char* _t421;
char* _t422;
long long _t471;
void* _t473;
void* _t483;
_t473 = __rsi;
_t466 = __rdx;
_t418 = __rbx;
_t336 = __rax;
_t299 = __esp;
_t294 = __edi;
_a8 = __ecx;
_a16 = __rdx;
E00406E00(__rbx, __rdx, __rsi);
_v32 = 0;
_v80 = 0;
_v40 = 0;
_v48 = 0;
_v50 = 0;
_v52 = 0;
_v82 = 0;
_v54 = 0;
_v56 = 0;
_v64 = 0;
_v68 = 0;
E00402F70();
E0040371E(0x10, _t336, _t466, __rbx);
*0x40b098 = _t336;
E0040371E(0x10, _t336, _t466, __rsi);
*0x40b0a0 = _t336;
E0040371E(0x2000, _t336, _t466);
*0x40bba8 = _t336;
E0040371E(0x2000, _t336, _t466);
*0x40ba90 = _t336;
E0040371E(0x208, _t336, _t466);
*0x40bba0 = _t336;
E0040371E(0x208, _t336, _t466);
*0x40ba88 = _t336;
E0040371E(0x4a, _t336, _t466);
*0x40b0b8 = _t336;
L00407400();
*0x40bbb0 = _t336;
*((char*)( *0x40bbb0)) = 1;
_t338 = __imp___errno;
*_t338();
*_t338 = 0;
*0x408028 = 4;
goto L3;
do {
do {
L3:
if(_a8 != 1) {
goto L25;
} else {
_t383 = _a16;
E0040371E(0x400, _t383, _t466);
_a16 = _t383;
_t384 = _a16;
*_t384 = *_t383;
E0040371E(0x2000, _t384, _t466);
_t420 = _t384;
*((long long*)(_a16 + 8)) = _t420;
_t387 = __imp____iob_func;
*_t387();
_t19 = _t387 + 0x60;
_t483 = _t19;
r8d = 0xa;
L004074E8();
_t212 = *__imp____iob_func();
L00407490();
r8d = 0x2000;
_t471 = _t420;
L00407368();
*0x40b07c = _t212;
_t301 = *0x40b07c;
if( *0x40b07c == 0) {
E004035DB(0, _t301, _t420, "wrong", _t471, _t481, _t483);
}
_t297 = E0040377B( *0x40b07c, _t420);
if(_t297 != 0) {
*0x40b07c = *0x40b07c - _t297;
}
if( *0x40b07c != 0) {
L004073F8();
}
L004074F0();
_t421 = *((intOrPtr*)(_a16 + 8));
if(_t421 != 0) {
*_t421 = 0;
}
L004074F0();
_t422 = *((intOrPtr*)(_a16 + 8));
if(_t422 != 0) {
*_t422 = 0;
}
_t418 = *((intOrPtr*)(_a16 + 8)) + 1;
_t298 = 2;
while(( *_t418 & 0x000000ff) != 0) {
__eflags = ( *_t418 & 0x000000ff) - 0x20;
if(( *_t418 & 0x000000ff) != 0x20) {
_t24 = _t418 - 1;
__eflags = *_t24 & 0x000000ff;
if(( *_t24 & 0x000000ff) == 0) {
*((_t298 << 3) + _a16) = _t418;
_t298 = _t298 + 1;
__eflags = _t298;
}
} else {
*_t418 = 0;
}
_t418 = _t418 + 1;
__eflags = _t418;
}
_a8 = _t298;
while(1) {
L25:
_t339 = _a16;
_t480 = "ade:g:G:hi:lLno:p:rs:tcuvw:z";
_t466 = _t339;
_t260 = _a8;
_t295 = E00402422(_a8, _t339, "ade:g:G:hi:lLno:p:rs:tcuvw:z");
if(_t295 == 0xffffffff) {
break;
}
_t27 = _t473 - 0x47;
__eflags = _t27 - 0x33;
if(__eflags > 0) {
_t340 = __imp___errno;
*_t340();
*_t340 = 0;
E004035DB(_t260, __eflags, _t418, "nc -h for help", _t466, "ade:g:G:hi:lLno:p:rs:tcuvw:z", _t483);
continue;
}
_t466 = *((intOrPtr*)(0x409b50 + _t339 * 4));
goto __rax;
}
if(( *0x40b0d6 & 0x0000ffff) != 0) {
L004073A0();
L004074F8();
_t261 = 0x10000;
E0040371E(0x10000, _t339, _t466);
_v64 = _t339;
}
_t344 = *0x40b0e8;
if(_t344 != 0) {
_t261 = 0;
L00407358();
*0x40b0d4 = 0;
*0x40b074 = 0;
}
_t123 = *0x40b0d4 & 0x0000ffff;
if(_t123 != 0) {
_t344 = *0x40b0c0;
r8d = 0x1b4;
L00407370();
*0x40b074 = _t123;
_t312 = *0x40b074;
if( *0x40b074 <= 0) {
_t344 = *0x40b0c0;
_t466 = _t344;
E004035DB(_t260, _t312, _t418, "can\'t open %s", _t344, _t480, _t483);
}
_t261 = 0x64;
E0040371E(0x64, _t344, _t466);
*0x40b0c0 = _t344;
}
_t347 = *((intOrPtr*)((_t344 << 3) + _a16));
if(_t347 != 0) {
_t417 = *((intOrPtr*)((_t347 << 3) + _a16));
E00403841( *0x40b0d2 & 0xffff, _t417, _t466, _t483);
_v32 = _t417;
}
if(_v32 != 0 && _v32 + 0x1c0 != 0) {
_v48 = _v32 + 0x1c0;
}
if(_v48 != 0) {
*0x40b048 = *0x40b048 + 1;
}
_t348 = __imp___errno;
*_t348();
*_t348 = 0;
if(( *0x40b0d0 & 0x0000ffff) == 0) {
L55:
_t329 = _v48;
if(_v48 == 0) {
E004035DB(_t260, _t329, _t418, "no destination", _t466, _t480, _t483);
}
_t351 = *((intOrPtr*)((_t348 << 3) + _a16));
_t330 = _t351;
if(_t351 == 0) {
E004035DB(_t260, _t330, _t418, "no port[s] to connect to", _t466, _t480, _t483);
}
_t355 = *((intOrPtr*)((_t351 + 1 << 3) + _a16));
if(_t355 != 0) {
*0x40802c = 0;
}
_v52 = _v50 & 0x0000ffff;
while(1) {
_t358 = *((_t355 << 3) + _a16);
if(_t358 == 0) {
goto L97;
}
_v82 = 0;
_v54 = _v82 & 0x0000ffff;
_t361 = *((intOrPtr*)((_t358 << 3) + _a16));
L004074F0();
_t418 = _t361;
__eflags = _t418;
if(_t418 != 0) {
*_t418 = 0;
_t418 = _t418 + 1;
_v54 = E00403BC0(0, _t418);
__eflags = _v54;
if(__eflags == 0) {
_t466 = _t418;
E004035DB(_t261, __eflags, _t418, "invalid port %s", _t418, _t481, _t483);
}
}
_t355 = *((intOrPtr*)((_t361 << 3) + _a16));
_t427 = _t355;
_v82 = E00403BC0(0, _t355);
__eflags = _v82;
if(_v82 == 0) {
_t376 = (_t355 << 3) + _a16;
__eflags = _t376;
_t355 = *_t376;
_t466 = _t355;
_t427 = "invalid port %s";
E004035DB(_t261, _t376, _t418, "invalid port %s", _t355, _t481, _t483);
}
__eflags = (_v54 & 0x0000ffff) - _v82;
if((_v54 & 0x0000ffff) <= _v82) {
_v56 = _v82 & 0x0000ffff;
} else {
*0x40802c = 0;
_v56 = _v54 & 0x0000ffff;
__eflags = *0x40b0d6 & 0x0000ffff;
if(( *0x40b0d6 & 0x0000ffff) != 0) {
_t261 = _v54 & 0x0000ffff;
r8d = _v54 & 0x0000ffff;
E00403E4E(_v82 & 0x0000ffff, _v64, _v64);
_t355 = _v64;
_t427 = _t355;
_v56 = E00403DCA(_t296, _t355, _t355);
}
}
while(1) {
__eflags = (_v82 & 0x0000ffff) - _v56;
if((_v82 & 0x0000ffff) > _v56) {
break;
}
__eflags = _v50;
if(_v50 == 0) {
_t175 = *0x40b0d6 & 0x0000ffff;
__eflags = _t175;
if(_t175 != 0) {
L004074C0();
_v52 = _t175;
__eflags = _v52 - 0x1fff;
if(_v52 <= 0x1fff) {
_t82 = &_v52;
*_t82 = _v52 + 0x2000;
__eflags = *_t82;
}
}
}
_t261 = 0;
_v56 = E00403BC0(_v56 & 0x0000ffff, _t427);
_t364 = _v48;
r9d = _v52 & 0x0000ffff;
_t481 = _v40;
*0x408010 = E00403EC7(_v56 & 0x0000ffff, _v48, _t466, _v40, _t483);
_t147 = *0x408010;
__eflags = _t147;
if(_t147 > 0) {
__eflags = *0x40b0e0 & 0x0000ffff;
if(( *0x40b0e0 & 0x0000ffff) != 0) {
__eflags = *0x40b0d8 & 0x0000ffff;
if(( *0x40b0d8 & 0x0000ffff) != 0) {
_t173 = *0x408010;
_t466 = _v48;
_t261 = _t173;
*0x408010 = E00404773(_t173, _t364, _v48);
}
}
}
_t148 = *0x408010;
__eflags = _t148;
if(_t148 <= 0) {
_t296 = 1;
__eflags = *0x40802c & 0x0000ffff;
if(( *0x40802c & 0x0000ffff) != 0) {
L88:
_t367 = _v32 + 0x100;
__eflags = _t367;
_t368 = _v32;
_v120 = *0x40b0b8;
r9d = _v56 & 0x0000ffff;
_t481 = _t367;
_t466 = _v32;
E004034EB("%s [%s] %d (%s)", _v32, _t367, _t483);
goto L89;
}
__eflags = ( *0x40b0da & 0x0000ffff) - 1;
if(( *0x40b0da & 0x0000ffff) > 1) {
goto L88;
}
_t368 = __imp__WSAGetLastError;
_t163 = *__imp__WSAGetLastError();
__eflags = _t163 - 0x274d;
if(_t163 == 0x274d) {
goto L89;
}
goto L88;
} else {
_t296 = 0;
_v120 = *0x40b0b8;
r9d = _v56 & 0x0000ffff;
_t481 = _v32 + 0x100;
_t466 = _v32;
E004034EB("%s [%s] %d (%s) open", _v32, _v32 + 0x100, _t483);
_t368 = *0x40b0e8;
__eflags = _t368;
if(_t368 != 0) {
E004026FD(_t261, _t368, _t368, _t481);
}
__eflags = *0x40b0e0 & 0x0000ffff;
if(( *0x40b0e0 & 0x0000ffff) == 0) {
_t368 = *0x40b0e8;
__eflags = _t368;
if(_t368 == 0) {
_t166 = *0x408010;
_t261 = _t166;
_t296 = E00404B7C(_t166, _t294, _t299, _t481, _t483);
}
}
L89:
_t369 = __imp__shutdown;
*_t369();
_t427 = _t369;
_t355 = __imp__closesocket;
*_t355();
__eflags = *0x40b0cc;
if( *0x40b0cc != 0) {
_t261 = *0x40b0cc;
_t355 = __imp___sleep;
*_t355();
}
__eflags = *0x40b0d6 & 0x0000ffff;
if(( *0x40b0d6 & 0x0000ffff) == 0) {
_t101 = &_v56;
*_t101 = _v56 - 1;
__eflags = *_t101;
} else {
_t355 = _v64;
_t427 = _t355;
_v56 = E00403DCA(_t296, _t355, _t355);
}
continue;
}
}
_t177 = *0x40b048 + 1;
__eflags = _t177;
*0x40b048 = _t177;
}
goto L97;
} else {
_v56 = 0;
_t381 = *((intOrPtr*)((_t348 << 3) + _a16));
if(_t381 != 0) {
_t407 = *((intOrPtr*)((_t381 << 3) + _a16));
_v56 = E00403BC0(0, _t407);
if(_v56 == 0) {
_t466 = *((intOrPtr*)((_t407 << 3) + _a16));
E004035DB(_t260, (_t407 << 3) + _a16, _t418, "invalid port %s", *((intOrPtr*)((_t407 << 3) + _a16)), _t480, _t483);
}
}
_t348 = _v48;
r9d = _v50 & 0x0000ffff;
_t481 = _v40;
*0x408010 = E0040425F(_v56 & 0x0000ffff, _t348, _v40, _t483);
_t206 = *0x408010;
if(_t206 <= 0) {
L54:
E004035DB(_t260, _t328, _t418, "no connection", _t466, _t481, _t483);
goto L55;
} else {
goto L46;
}
}
}
L46:
_t382 = *0x40b0e8;
if( *0x40b0e8 != 0) {
E004026FD(_t260, _t382, _t382, _t481);
}
_t348 = *0x40b0e8;
if(_t348 == 0) {
_t226 = *0x408010;
_t295 = E00404B7C(_t226, _t294, _t299, _t481, _t483);
}
if(( *0x40b0da & 0x0000ffff) > 1) {
r8d = *0x40b080;
E004034EB(" sent %d, rcvd %d", _t466, _t481, _t483);
}
_t328 = _v68 - 1;
} while (_v68 == 1);
_t260 = _t295;
L00407428();
goto L54;
L97:
_t377 = __imp___errno;
*_t377();
*_t377 = 0;
if(( *0x40b0da & 0x0000ffff) > 1) {
r8d = *0x40b080;
E004034EB("sent %d, rcvd %d", _t466, _t481, _t483);
}
*__imp__WSACleanup();
} while (_v68 == 1);
_t335 = *0x40802c & 0x0000ffff;
if(( *0x40802c & 0x0000ffff) != 0) {
L00407428();
}
L00407428();
*0x40b0da = 1;
E004034EB("[v1.12 NT http://eternallybored.org/misc/netcat/]\nconnect to somewhere:\tnc [-options] hostname port[s] [ports] ... \nlisten for inbound:\tnc -l -p port [options] [hostname] [port]\noptions:", _t466, _t481, _t483);
E004034EB("\t-d\t\tdetach from console, background mode\n", _t466, _t481, _t483);
E004034EB("\t-e prog\t\tinbound program to exec [dangerous!!]", _t466, _t481, _t483);
E004034EB("\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", _t466, _t481, _t483);
E004034EB("\t-t\t\tanswer TELNET negotiation", _t466, _t481, _t483);
E004034EB("\t-c\t\tsend CRLF instead of just LF\n\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]", _t466, _t481, _t483);
E004035DB(0, _t335, _t418, "port numbers can be individual or ranges: m-n [inclusive]", _t466, _t481, _t483);
return 0;
}
0x00405282
0x00405282
0x00405282
0x00405282
0x00405282
0x00405282
0x0040528c
0x0040528f
0x00405293
0x00405298
0x004052a0
0x004052a8
0x004052b0
0x004052b8
0x004052be
0x004052c4
0x004052ca
0x004052d0
0x004052d6
0x004052de
0x004052e5
0x004052ef
0x004052f4
0x00405300
0x00405305
0x00405311
0x00405316
0x00405322
0x00405327
0x00405333
0x00405338
0x00405344
0x00405349
0x00405355
0x0040535a
0x00405366
0x0040536b
0x00405379
0x0040537c
0x00405383
0x00405385
0x0040538b
0x00405395
0x0040539b
0x0040539b
0x0040539b
0x0040539f
0x00000000
0x004053a5
0x004053a5
0x004053b1
0x004053b6
0x004053ba
0x004053be
0x004053c6
0x004053cb
0x004053d6
0x004053d9
0x004053e0
0x004053e2
0x004053ed
0x004053f0
0x004053fe
0x0040540a
0x00405413
0x00405418
0x0040541e
0x00405426
0x0040542b
0x00405437
0x00405439
0x00405442
0x00405442
0x00405457
0x0040545b
0x0040546b
0x0040546b
0x00405479
0x00405497
0x00405497
0x004054af
0x004054b4
0x004054ba
0x004054bc
0x004054bc
0x004054d2
0x004054d7
0x004054dd
0x004054df
0x004054df
0x004054ed
0x004054f1
0x00405524
0x004054fb
0x004054fd
0x00405504
0x0040550b
0x0040550d
0x0040551a
0x0040551d
0x0040551d
0x0040551d
0x004054ff
0x004054ff
0x004054ff
0x00405520
0x00405520
0x00405520
0x0040552b
0x004058bb
0x004058bb
0x004058bb
0x004058bf
0x004058c6
0x004058c9
0x004058d1
0x004058d6
0x00000000
0x00000000
0x00405533
0x00405536
0x00405539
0x0040589a
0x004058a1
0x004058a3
0x004058b0
0x00000000
0x004058b0
0x00405553
0x00405561
0x00405561
0x004058e6
0x004058ed
0x004058f4
0x004058f9
0x004058fe
0x00405903
0x00405903
0x00405907
0x00405911
0x00405913
0x00405918
0x0040591d
0x00405926
0x00405926
0x00405930
0x0040593a
0x0040593c
0x00405943
0x00405951
0x00405956
0x00405962
0x00405964
0x00405966
0x0040596d
0x00405977
0x00405977
0x0040597c
0x00405981
0x00405986
0x00405986
0x0040599d
0x004059a3
0x004059bf
0x004059c5
0x004059ca
0x004059ca
0x004059d3
0x004059ee
0x004059ee
0x004059f7
0x00405a02
0x00405a02
0x00405a08
0x00405a0f
0x00405a11
0x00405a21
0x00405b3e
0x00405b3e
0x00405b43
0x00405b4c
0x00405b4c
0x00405b61
0x00405b64
0x00405b67
0x00405b70
0x00405b70
0x00405b89
0x00405b8f
0x00405b91
0x00405b91
0x00405b9e
0x00405edb
0x00405eeb
0x00405ef1
0x00000000
0x00000000
0x00405ba7
0x00405bb1
0x00405bc5
0x00405bd0
0x00405bd5
0x00405bd8
0x00405bdb
0x00405bdd
0x00405be0
0x00405bf1
0x00405bf5
0x00405bfa
0x00405bfc
0x00405c06
0x00405c06
0x00405bfa
0x00405c1b
0x00405c23
0x00405c2b
0x00405c2f
0x00405c34
0x00405c42
0x00405c42
0x00405c46
0x00405c49
0x00405c4c
0x00405c53
0x00405c53
0x00405c5c
0x00405c60
0x00405cb3
0x00405c62
0x00405c62
0x00405c6f
0x00405c7a
0x00405c7d
0x00405c83
0x00405c8f
0x00405c95
0x00405c9a
0x00405c9e
0x00405ca6
0x00405ca6
0x00405c7d
0x00405ebe
0x00405ec2
0x00405ec6
0x00000000
0x00000000
0x00405cbc
0x00405cc1
0x00405cc3
0x00405cca
0x00405ccd
0x00405ccf
0x00405cd4
0x00405cd8
0x00405cde
0x00405ce0
0x00405ce0
0x00405ce0
0x00405ce0
0x00405cde
0x00405ccd
0x00405cec
0x00405cf6
0x00405d06
0x00405d0a
0x00405d0d
0x00405d18
0x00405d1e
0x00405d24
0x00405d26
0x00405d2f
0x00405d32
0x00405d3b
0x00405d3e
0x00405d40
0x00405d46
0x00405d4a
0x00405d51
0x00405d51
0x00405d3e
0x00405d32
0x00405d57
0x00405d5d
0x00405d5f
0x00405dec
0x00405df8
0x00405dfb
0x00405e1a
0x00405e2c
0x00405e2c
0x00405e35
0x00405e39
0x00405e3e
0x00405e41
0x00405e44
0x00405e4e
0x00000000
0x00405e4e
0x00405e04
0x00405e08
0x00000000
0x00000000
0x00405e0a
0x00405e11
0x00405e13
0x00405e18
0x00000000
0x00000000
0x00000000
0x00405d65
0x00405d65
0x00405d89
0x00405d8e
0x00405d91
0x00405d94
0x00405d9e
0x00405da3
0x00405daa
0x00405dad
0x00405dba
0x00405dba
0x00405dc6
0x00405dc9
0x00405dcf
0x00405dd6
0x00405dd9
0x00405ddb
0x00405de1
0x00405de8
0x00405de8
0x00405dd9
0x00405e53
0x00405e63
0x00405e6a
0x00405e74
0x00405e77
0x00405e7e
0x00405e86
0x00405e88
0x00405e90
0x00405e92
0x00405e99
0x00405e99
0x00405ea2
0x00405ea5
0x00405eb9
0x00405eb9
0x00405eb9
0x00405ea7
0x00405ea7
0x00405eab
0x00405eb3
0x00405eb3
0x00000000
0x00405ea5
0x00405d5f
0x00405ed2
0x00405ed2
0x00405ed5
0x00405ed5
0x00000000
0x00405a27
0x00405a27
0x00405a3d
0x00405a43
0x00405a55
0x00405a65
0x00405a6e
0x00405a83
0x00405a8d
0x00405a8d
0x00405a6e
0x00405a9e
0x00405aa2
0x00405aa5
0x00405ab0
0x00405ab6
0x00405abe
0x00405b32
0x00405b39
0x00000000
0x00000000
0x00000000
0x00000000
0x00405abe
0x00405a21
0x00405ac0
0x00405ac0
0x00405aca
0x00405ad7
0x00405ad7
0x00405adc
0x00405ae6
0x00405ae8
0x00405af5
0x00405af5
0x00405b02
0x00405b10
0x00405b1c
0x00405b1c
0x00405b21
0x00405b21
0x00405b2b
0x00405b2d
0x00000000
0x00405ef7
0x00405ef7
0x00405efe
0x00405f00
0x00405f11
0x00405f1f
0x00405f2b
0x00405f2b
0x00405f37
0x00405f39
0x00405f4a
0x00405f4d
0x00405f51
0x00405f51
0x00405f5b
0x00405f68
0x00405f78
0x00405f84
0x00405f90
0x00405f9c
0x00405fa8
0x00405fb4
0x00405fc0
0x00405fcb