KdpCloseRemoteFile
INT64 __fastcall KdpCloseRemoteFile(VOID *Handle){
__int64 v1;
UINT8 v3;
__int64 v4;
int v5;
int v6;
int v7[2];
int *p_result;
__int128 v9;
int result;
unsigned int result_4;
__int64 i;
v1 = (unsigned int)((_DWORD)Handle - 1);
memset((INT64)&result, 0i64);
if( (unsigned int)v1 >= 0x10 )
return 3221225485i64;
v3 = KdEnterDebugger(0i64, 0i64);
if( KdpRemoteFiles[v1] )
{
for( i = KdpRemoteFiles[v1]; ; i = v4 )
{
v7[1] = 0;
v6 = 0;
result = 13363;
v7[0] = 4194368;
p_result = &result;
v9 = 0i64;
KdSendPacket(11i64, v7, 0i64, &KdpContext);
if( (_BYTE)KdDebuggerNotPresent )
{
v5 = -1073740972;
result_4 = -1073740972;
goto LABEL_10;
}
WORD1(v9) = 4096;
*((_QWORD *)&v9 + 1) = KdpMessageBuffer;
if( !(unsigned int)KdReceivePacket(11i64, v7, &v9, &v6, &KdpContext) )
break;
v4 = KdpRemoteFiles[v1];
result_4 = 0;
}
v5 = result_4;
LABEL_10:
if( v5 >= 0 )
KdpRemoteFiles[v1] = 0i64;
}
else
{
result_4 = -1073741811;
}
KdExitDebugger(v3);
return result_4;
}Referenced by:
KdPullRemoteFileEx