SHARE
TWEET

Untitled

a guest Jan 15th, 2014 123 Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. int __cdecl sub_401220(int a1, int a2)
  2. {
  3.   int v3; // [sp+8h] [bp-10h]@1
  4.   signed int v4; // [sp+Ch] [bp-Ch]@1
  5.   signed int v5; // [sp+14h] [bp-4h]@1
  6.   int v6; // [sp+14h] [bp-4h]@4
  7.  
  8.   v4 = -1;
  9.   v3 = -1 - a2 + 1;
  10.   v5 = -1;
  11.   while ( v3 )
  12.   {
  13.     ++*(_DWORD *)a1;
  14.     --v3;
  15.     --v5;
  16.   }
  17.   v6 = v5 * v5;
  18.   while ( v4 )
  19.   {
  20.     v6 *= 123;
  21.     ++*(_DWORD *)a1;
  22.     --v4;
  23.   }
  24.   ++*(_DWORD *)a1;
  25.   return a1;
  26. }
  27. int *__cdecl sub_401100(int *a1, int a2)
  28. {
  29.   int v2; // ST20_4@3
  30.   signed int v4; // [sp+Ch] [bp-1Ch]@1
  31.   int v5; // [sp+14h] [bp-14h]@1
  32.   int v6; // [sp+18h] [bp-10h]@1
  33.   int v7; // [sp+1Ch] [bp-Ch]@1
  34.   int v8; // [sp+20h] [bp-8h]@1
  35.   unsigned int v9; // [sp+24h] [bp-4h]@1
  36.   int v10; // [sp+28h] [bp+0h]@1
  37.  
  38.   v9 = (unsigned int)&v10 ^ __security_cookie;
  39.   v5 = *a1;
  40.   v6 = a2;
  41.   v4 = -1;
  42.   v8 = 0;
  43.   v7 = a2 * v5;
  44.   while ( a2 )
  45.   {
  46.     v2 = v7 * v5;
  47.     sub_401000((int)&v8, *a1);
  48.     ++v7;
  49.     --a2;
  50.     v6 = v2 - 1;
  51.   }
  52.   while ( v4 )
  53.   {
  54.     ++v7;
  55.     ++*a1;
  56.     --v4;
  57.     --v6;
  58.   }
  59.   ++*a1;
  60.   *a1 = v8;
  61.   return a1;
  62. }
  63. int __cdecl sub_401000(int a1, int a2)
  64. {
  65.   int v3; // [sp+Ch] [bp-18h]@1
  66.   signed int v4; // [sp+10h] [bp-14h]@1
  67.   int v5; // [sp+18h] [bp-Ch]@1
  68.   signed int v6; // [sp+1Ch] [bp-8h]@1
  69.  
  70.   v4 = -1;
  71.   v3 = -1 - a2 + 1;
  72.   v6 = 1231;
  73.   v5 = a2 + 1231;
  74.   while ( v3 )
  75.   {
  76.     ++v6;
  77.     --*(_DWORD *)a1;
  78.     --v3;
  79.     --v5;
  80.   }
  81.   while ( v4 )
  82.   {
  83.     --v5;
  84.     ++*(_DWORD *)a1;
  85.     --v4;
  86.   }
  87.   ++*(_DWORD *)a1;
  88.   return a1;
  89. }
  90. int __cdecl sub_4012F0()
  91. {
  92.   int v0; // eax@4
  93.   int v1; // eax@4
  94.   int v2; // eax@4
  95.   int v3; // eax@4
  96.   int v4; // eax@4
  97.   int v5; // eax@4
  98.   int v6; // eax@4
  99.   int v7; // eax@4
  100.   int v8; // eax@4
  101.   int v9; // eax@4
  102.   int v10; // eax@4
  103.   int v11; // eax@4
  104.   int v12; // eax@4
  105.   int v13; // eax@4
  106.   int v14; // eax@4
  107.   int v15; // eax@4
  108.   int v16; // eax@4
  109.   int v17; // eax@4
  110.   int v18; // eax@4
  111.   int v19; // eax@4
  112.   int v20; // eax@4
  113.   int v21; // eax@4
  114.   int v22; // eax@4
  115.   int v23; // eax@4
  116.   int v24; // eax@4
  117.   int v25; // eax@4
  118.   int v26; // eax@4
  119.   int v27; // eax@4
  120.   int v28; // eax@4
  121.   int v29; // eax@4
  122.   int v30; // eax@4
  123.   int v31; // eax@4
  124.   int v32; // eax@4
  125.   int v33; // eax@4
  126.   int v34; // eax@4
  127.   int v35; // eax@4
  128.   int v36; // eax@4
  129.   int v37; // eax@4
  130.   int v38; // eax@4
  131.   int v39; // eax@4
  132.   int v40; // eax@4
  133.   int v41; // eax@4
  134.   int v42; // eax@4
  135.   int v43; // eax@4
  136.   int v44; // eax@4
  137.   int v45; // eax@4
  138.   int v46; // eax@4
  139.   int v47; // eax@4
  140.   int v48; // eax@4
  141.   int v49; // eax@4
  142.   int v50; // eax@4
  143.   int v51; // eax@4
  144.   int v52; // eax@4
  145.   int v53; // eax@4
  146.   int v54; // eax@4
  147.   int v55; // eax@4
  148.   int v56; // eax@4
  149.   int v57; // eax@4
  150.   int v58; // eax@4
  151.   int v59; // eax@4
  152.   int v60; // eax@4
  153.   int v61; // eax@4
  154.   int v62; // eax@4
  155.   int v63; // eax@4
  156.   int v64; // eax@4
  157.   int v65; // eax@4
  158.   int v66; // eax@4
  159.   int v67; // eax@4
  160.   int v68; // eax@4
  161.   int v69; // eax@4
  162.   int v70; // eax@4
  163.   int v71; // eax@4
  164.   int v72; // eax@4
  165.   int v73; // eax@4
  166.   int v74; // eax@4
  167.   int v75; // eax@4
  168.   int v76; // eax@4
  169.   int v77; // eax@4
  170.   int v78; // eax@4
  171.   int v79; // eax@4
  172.   int v80; // eax@4
  173.   int v81; // eax@4
  174.   int v82; // eax@4
  175.   int v83; // eax@4
  176.   int v84; // eax@4
  177.   int v85; // eax@4
  178.   int v86; // eax@4
  179.   int v87; // eax@4
  180.   int v88; // eax@4
  181.   int v89; // eax@4
  182.   int v90; // eax@4
  183.   int v91; // eax@4
  184.   int v92; // eax@4
  185.   int v93; // eax@4
  186.   int v94; // eax@4
  187.   int v95; // eax@4
  188.   int v96; // eax@4
  189.   int v97; // eax@4
  190.   int v98; // eax@4
  191.   int v99; // eax@4
  192.   int v100; // eax@4
  193.   int v101; // eax@4
  194.   int v102; // eax@4
  195.   int v103; // eax@4
  196.   int v104; // eax@4
  197.   int v105; // eax@4
  198.   int v106; // ST1C_4@4
  199.   int v107; // eax@4
  200.   int v108; // eax@4
  201.   int v109; // ST20_4@4
  202.   int v110; // eax@4
  203.   int v111; // eax@4
  204.   int v112; // ST20_4@4
  205.   int v113; // eax@4
  206.   signed int i; // [sp+4h] [bp-90h]@1
  207.   signed int j; // [sp+8h] [bp-8Ch]@4
  208.   int v117[33]; // [sp+Ch] [bp-88h]@3
  209.   unsigned int v118; // [sp+90h] [bp-4h]@1
  210.   int v119; // [sp+94h] [bp+0h]@1
  211.  
  212.   v118 = (unsigned int)&v119 ^ __security_cookie;
  213.   for ( i = 0; i < 32; ++i )
  214.     v117[i] = 1;
  215.   v117[32] = 0;
  216.   sub_401D2B("Your flag is:");
  217.   v0 = (int)sub_401100(v117, 1000000000);
  218.   v1 = sub_401220(v0, 999999950);
  219.   sub_401100((int *)v1, 2);
  220.   v2 = sub_401000((int)&v117[1], 5000000);
  221.   v3 = sub_401220(v2, 6666666);
  222.   v4 = sub_401000(v3, 1666666);
  223.   v5 = sub_401000(v4, 45);
  224.   v6 = (int)sub_401100((int *)v5, 2);
  225.   sub_401000(v6, 5);
  226.   v7 = (int)sub_401100(&v117[2], 1000000000);
  227.   v8 = sub_401220(v7, 999999950);
  228.   v9 = (int)sub_401100((int *)v8, 2);
  229.   sub_401000(v9, 2);
  230.   v10 = sub_401000((int)&v117[3], 55);
  231.   v11 = sub_401220(v10, 3);
  232.   v12 = sub_401000(v11, 4);
  233.   sub_401220(v12, 1);
  234.   v13 = (int)sub_401100(&v117[4], 100000000);
  235.   v14 = sub_401220(v13, 99999950);
  236.   v15 = (int)sub_401100((int *)v14, 2);
  237.   sub_401000(v15, 2);
  238.   v16 = sub_401220((int)&v117[5], 1);
  239.   v17 = (int)sub_401100((int *)v16, 1000000000);
  240.   v18 = sub_401000(v17, 55);
  241.   sub_401220(v18, 3);
  242.   v19 = (int)sub_401100(&v117[6], 1000000);
  243.   v20 = sub_401220(v19, 999975);
  244.   sub_401100((int *)v20, 4);
  245.   v21 = sub_401000((int)&v117[7], 55);
  246.   v22 = sub_401220(v21, 33);
  247.   v23 = sub_401000(v22, 44);
  248.   sub_401220(v23, 11);
  249.   v24 = (int)sub_401100(&v117[8], 10);
  250.   v25 = sub_401220(v24, 5);
  251.   v26 = (int)sub_401100((int *)v25, 8);
  252.   sub_401000(v26, 9);
  253.   v27 = sub_401000((int)&v117[9], 0);
  254.   v28 = sub_401220(v27, 0);
  255.   v29 = sub_401000(v28, 11);
  256.   v30 = sub_401220(v29, 11);
  257.   sub_401000(v30, 53);
  258.   v31 = sub_401000((int)&v117[10], 49);
  259.   v32 = sub_401220(v31, 2);
  260.   v33 = sub_401000(v32, 4);
  261.   sub_401220(v33, 2);
  262.   v34 = (int)sub_401100(&v117[11], 1000000);
  263.   v35 = sub_401220(v34, 999999);
  264.   v36 = (int)sub_401100((int *)v35, 4);
  265.   sub_401000(v36, 50);
  266.   v37 = sub_401000((int)&v117[12], 1);
  267.   v38 = sub_401000(v37, 1);
  268.   v39 = sub_401000(v38, 1);
  269.   v40 = sub_401000(v39, 1);
  270.   v41 = sub_401000(v40, 1);
  271.   v42 = sub_401000(v41, 1);
  272.   v43 = sub_401000(v42, 10);
  273.   sub_401000(v43, 32);
  274.   v44 = (int)sub_401100(&v117[13], 10);
  275.   v45 = sub_401220(v44, 5);
  276.   v46 = (int)sub_401100((int *)v45, 8);
  277.   v47 = sub_401000(v46, 9);
  278.   sub_401000(v47, 48);
  279.   v48 = sub_401220((int)&v117[14], 1);
  280.   v49 = (int)sub_401100((int *)v48, -294967296);
  281.   v50 = sub_401000(v49, 55);
  282.   sub_401220(v50, 3);
  283.   v51 = sub_401000((int)&v117[15], 1);
  284.   v52 = sub_401000(v51, 2);
  285.   v53 = sub_401000(v52, 3);
  286.   v54 = sub_401000(v53, 4);
  287.   v55 = sub_401000(v54, 5);
  288.   v56 = sub_401000(v55, 6);
  289.   v57 = sub_401000(v56, 7);
  290.   sub_401000(v57, 20);
  291.   v58 = (int)sub_401100(&v117[16], 10);
  292.   v59 = sub_401220(v58, 5);
  293.   v60 = (int)sub_401100((int *)v59, 8);
  294.   v61 = sub_401000(v60, 9);
  295.   sub_401000(v61, 48);
  296.   v62 = sub_401000((int)&v117[17], 7);
  297.   v63 = sub_401000(v62, 6);
  298.   v64 = sub_401000(v63, 5);
  299.   v65 = sub_401000(v64, 4);
  300.   v66 = sub_401000(v65, 3);
  301.   v67 = sub_401000(v66, 2);
  302.   v68 = sub_401000(v67, 1);
  303.   sub_401000(v68, 20);
  304.   v69 = sub_401000((int)&v117[18], 7);
  305.   v70 = sub_401000(v69, 2);
  306.   v71 = sub_401000(v70, 4);
  307.   v72 = sub_401000(v71, 3);
  308.   v73 = sub_401000(v72, 6);
  309.   v74 = sub_401000(v73, 5);
  310.   v75 = sub_401000(v74, 1);
  311.   sub_401000(v75, 20);
  312.   v76 = (int)sub_401100(&v117[19], 1000000);
  313.   v77 = sub_401220(v76, 999999);
  314.   v78 = (int)sub_401100((int *)v77, 4);
  315.   v79 = sub_401000(v78, 50);
  316.   sub_401220(v79, 1);
  317.   v80 = sub_401220((int)&v117[20], 1);
  318.   v81 = (int)sub_401100((int *)v80, -294967296);
  319.   v82 = sub_401000(v81, 49);
  320.   sub_401220(v82, 1);
  321.   v83 = sub_401220((int)&v117[21], 1);
  322.   v84 = (int)sub_401100((int *)v83, 1000000000);
  323.   v85 = sub_401000(v84, 54);
  324.   v86 = sub_401220(v85, 1);
  325.   v87 = sub_401000(v86, 1000000000);
  326.   sub_401220(v87, 1000000000);
  327.   v88 = sub_401000((int)&v117[22], 49);
  328.   v89 = sub_401220(v88, 1);
  329.   v90 = sub_401000(v89, 2);
  330.   sub_401220(v90, 1);
  331.   v91 = (int)sub_401100(&v117[23], 10);
  332.   v92 = sub_401220(v91, 5);
  333.   v93 = (int)sub_401100((int *)v92, 8);
  334.   v94 = sub_401000(v93, 9);
  335.   sub_401000(v94, 48);
  336.   v95 = sub_401000((int)&v117[24], 1);
  337.   v96 = sub_401000(v95, 3);
  338.   v97 = sub_401000(v96, 3);
  339.   v98 = sub_401000(v97, 3);
  340.   v99 = sub_401000(v98, 6);
  341.   v100 = sub_401000(v99, 6);
  342.   v101 = sub_401000(v100, 6);
  343.   sub_401000(v101, 20);
  344.   v102 = sub_401000((int)&v117[25], 55);
  345.   v103 = sub_401220(v102, 33);
  346.   v104 = sub_401000(v103, 44);
  347.   v105 = sub_401220(v104, 11);
  348.   sub_401000(v105, 42);
  349.   sub_401000((int)&v117[26], v117[25]);
  350.   sub_401000((int)&v117[27], v117[12]);
  351.   v106 = v117[27];
  352.   v107 = sub_401220((int)&v117[28], 1);
  353.   v108 = sub_401000(v107, v106);
  354.   sub_401220(v108, 1);
  355.   v109 = v117[23];
  356.   v110 = sub_401220((int)&v117[29], 1);
  357.   v111 = (int)sub_401100((int *)v110, 1000000);
  358.   sub_401000(v111, v109);
  359.   v112 = v117[27];
  360.   v113 = sub_401000((int)&v117[30], 1);
  361.   sub_401100((int *)v113, v112);
  362.   sub_401000((int)&v117[31], v117[30]);
  363.   sub_401C7F("CTF{");
  364.   for ( j = 0; j < 32; ++j )
  365.     sub_401C7F("%c", LOBYTE(v117[j]));
  366.   sub_401C7F("}\n");
  367.   return 0;
  368. }
RAW Paste Data
We use cookies for various purposes including analytics. By continuing to use Pastebin, you agree to our use of cookies as described in the Cookies Policy. OK, I Understand
 
Top