void FUN_00405aac(FILE *param_1,FILE *param_2)

{
  bool bVar1;
  int __c;
  uint __c_00;
  int iVar2;
  uint uVar3;
  
  uVar3 = 0xff;
  do {
    iVar2 = 0;
LAB_00405df4:
    do {
      __c_00 = fgetc(param_1)   //possible issue identified - semgrep
      if (__c_00 == 0xffffffff) {
        if (iVar2 != 0) {
          fputc(0x3d,param_2);
          fputc(0xd,param_2);
          fputc(10,param_2);
          fflush(param_2);
          return;
        }
        return;
      }
      if ((int)__c_00 < 0x20) {
        bVar1 = __c_00 - 9 < 2;
LAB_00405b1c:
        if ((!bVar1) || ((iVar2 == 0 && (__c_00 == 0x2e)))) goto LAB_00405b34;
        if (__c_00 == 10) {
          if ((uVar3 == 0x20) || (uVar3 == 9)) {
            fputc(0x3d,param_2);
            fputc(10,param_2);
            fflush(param_2);
          }
          fputc(10,param_2);
          iVar2 = 0;
          fflush(param_2);
          uVar3 = 10;
          goto LAB_00405df4;
        }
        if ((__c_00 == 0x46) && (uVar3 == 10)) {
          __c = fgetc(param_1)   //possible issue identified - semgrep
          if (__c == 0x72) {
            __c = fgetc(param_1)   //possible issue identified - semgrep
            if (__c == 0x6f) {
              __c = fgetc(param_1)   //possible issue identified - semgrep
              if (__c == 0x6d) {
                __c = fgetc(param_1)   //possible issue identified - semgrep
                if (__c == 0x20) {
                  fputs("=46rom",param_2);
                  iVar2 = iVar2 + 6;
                }
                else {
                  fputs("From",param_2);
                  iVar2 = iVar2 + 4;
                }
              }
              else {
                fputs("Fro",param_2);
                iVar2 = iVar2 + 3;
              }
            }
            else {
              fputs("Fr",param_2);
              iVar2 = iVar2 + 2;
            }
          }
          else {
            fputc(0x46,param_2);
            iVar2 = iVar2 + 1;
          }
          ungetc(__c,param_1)   //possible issue identified - semgrep
          __c_00 = 0x78;
        }
        else {
          fputc(__c_00,param_2);
          iVar2 = iVar2 + 1;
        }
      }
      else {
        bVar1 = (int)__c_00 < 0x7f;
        if (__c_00 != 0x3d) goto LAB_00405b1c;
LAB_00405b34:
        fputc(0x3d,param_2);
        fputc((int)"0123456789ABCDEF"[(int)__c_00 >> 4],param_2);
        fputc((int)"0123456789ABCDEF"[__c_00 & 0xf],param_2);
        iVar2 = iVar2 + 3;
        __c_00 = 0x41;
      }
      uVar3 = __c_00;
    } while (iVar2 < 0x49);
    fputc(0x3d,param_2);
    fputc(0xd,param_2);
    fputc(10,param_2);
    uVar3 = 10;
    fflush(param_2);
  } while( true );
}