Advertisement
Guest User

TDL Loader Bytes

a guest
Jul 27th, 2016
1,281
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. static const unsigned char TDLBootstrapLoader_code[463] = {
  2.     0x48, 0x8B, 0xC4,                                                              // mov     rax, rsp
  3.     0x55,                                                                          // push    rbp
  4.     0x57,                                                                          // push    rdi
  5.     0x41, 0x54,                                                                    // push    r12
  6.     0x41, 0x55,                                                                    // push    r13
  7.     0x41, 0x56,                                                                    // push    r14
  8.     0x48, 0x83, 0xEC, 0x70,                                                        // sub     rsp, 70h
  9.                                                                                    // loc_140021F5F:
  10.     0x48, 0x89, 0x58, 0x10,                                                        // mov     [rax+10h], rbx
  11.     0x48, 0x8D, 0x3D, 0xE6, 0xFF, 0xFF, 0xFF,                                      // lea     rdi, TDLBootstrapLoader
  12.     0x48, 0x81, 0xC7, 0x00, 0x02, 0x00, 0x00,                                      // add     rdi, 200h
  13.     0x4C, 0x89, 0x78, 0x20,                                                        // mov     [rax+20h], r15
  14.     0x4C, 0x8B, 0xEA,                                                              // mov     r13, rdx
  15.     0x48, 0x8B, 0xD9,                                                              // mov     rbx, rcx
  16.     0x33, 0xC9,                                                                    // xor     ecx, ecx
  17.     0x41, 0xB8, 0x54, 0x64, 0x6C, 0x53,                                            // mov     r8d, 536C6454h
  18.     0x4C, 0x63, 0x77, 0x3C,                                                        // movsxd  r14, dword ptr [rdi+3Ch]
  19.     0x4C, 0x03, 0xF7,                                                              // add     r14, rdi
  20.     0x45, 0x8B, 0x7E, 0x50,                                                        // mov     r15d, [r14+50h]
  21.     0x41, 0x8D, 0x97, 0x00, 0x10, 0x00, 0x00,                                      // lea     edx, [r15+1000h]
  22.     0xFF, 0xD3,                                                                    // call    rbx
  23.     0xBA, 0x18, 0x00, 0x00, 0x00,                                                  // mov     edx, 18h
  24.     0x33, 0xC9,                                                                    // xor     ecx, ecx
  25.     0x41, 0xB8, 0x54, 0x64, 0x6C, 0x53,                                            // mov     r8d, 536C6454h
  26.     0x48, 0x8D, 0xA8, 0x00, 0x10, 0x00, 0x00,                                      // lea     rbp, [rax+1000h]
  27.     0x48, 0x81, 0xE5, 0x00, 0xF0, 0xFF, 0xFF,                                      // and     rbp, 0FFFFFFFFFFFFF000h
  28.     0xFF, 0xD3,                                                                    // call    rbx
  29.     0x4C, 0x8B, 0xE0,                                                              // mov     r12, rax
  30.     0x45, 0x33, 0xC9,                                                              // xor     r9d, r9d
  31.     0x48, 0xB8, 0xDD, 0xCC, 0xBB, 0xAA, 0x00, 0xFF, 0x00, 0xFF,                    // mov     rax, 0FF00FF00AABBCCDDh
  32.     0x49, 0x89, 0x04, 0x24,                                                        // mov     [r12], rax
  33.     0x49, 0x89, 0x6C, 0x24, 0x08,                                                  // mov     [r12+8], rbp
  34.     0x41, 0x8B, 0x4E, 0x50,                                                        // mov     ecx, [r14+50h]
  35.     0x41, 0x89, 0x4C, 0x24, 0x10,                                                  // mov     [r12+10h], ecx
  36.     0x41, 0x83, 0xBE, 0x84, 0x00, 0x00, 0x00, 0x05,                                // cmp     dword ptr [r14+84h], 5
  37.     0x0F, 0x86, 0xA7, 0x00, 0x00, 0x00,                                            // jbe     loc_14002208B
  38.     0x41, 0x8B, 0x8E, 0xB0, 0x00, 0x00, 0x00,                                      // mov     ecx, [r14+0B0h]
  39.     0x85, 0xC9,                                                                    // test    ecx, ecx
  40.     0x0F, 0x84, 0x98, 0x00, 0x00, 0x00,                                            // jz      loc_14002208B
  41.     0x4C, 0x8B, 0xDD,                                                              // mov     r11, rbp
  42.                                                                                    // loc_140021FF6:                            
  43.     0x48, 0x89, 0xB4, 0x24, 0xB0, 0x00, 0x00, 0x00,                                // mov     [rsp+98h+arg_10], rsi
  44.     0x4D, 0x2B, 0x5E, 0x30,                                                        // sub     r11, [r14+30h]
  45.     0x4C, 0x8D, 0x04, 0x0F,                                                        // lea     r8, [rdi+rcx]
  46.     0x41, 0x8B, 0xB6, 0xB4, 0x00, 0x00, 0x00,                                      // mov     esi, [r14+0B4h]
  47.     0x41, 0x8B, 0xD9,                                                              // mov     ebx, r9d
  48.     0x85, 0xF6,                                                                    // test    esi, esi
  49.     0x74, 0x6F,                                                                    // jz      short loc_140022083
  50.     0x0F, 0x1F, 0x40, 0x00,                                                        // nop     dword ptr [rax+00h]
  51.     0x0F, 0x1F, 0x84, 0x00, 0x00, 0x00, 0x00, 0x00,                                // nop     dword ptr [rax+rax+00000000h]
  52.                                                                                    // loc_140022020:
  53.     0x41, 0xB9, 0x08, 0x00, 0x00, 0x00,                                            // mov     r9d, 8
  54.     0x4D, 0x8D, 0x50, 0x08,                                                        // lea     r10, [r8+8]
  55.     0x45, 0x39, 0x48, 0x04,                                                        // cmp     [r8+4], r9d
  56.     0x76, 0x43,                                                                    // jbe     short loc_140022073
  57.                                                                                    // loc_140022030:
  58.     0x41, 0x0F, 0xB7, 0x02,                                                        // movzx   eax, word ptr [r10]
  59.     0x8B, 0xC8,                                                                    // mov     ecx, eax
  60.     0xC1, 0xE9, 0x0C,                                                              // shr     ecx, 0Ch
  61.     0x83, 0xF9, 0x03,                                                              // cmp     ecx, 3
  62.     0x74, 0x17,                                                                    // jz      short loc_140022055
  63.     0x83, 0xF9, 0x0A,                                                              // cmp     ecx, 0Ah
  64.     0x75, 0x22,                                                                    // jnz     short loc_140022065
  65.     0x41, 0x8B, 0x10,                                                              // mov     edx, [r8]
  66.     0x25, 0xFF, 0x0F, 0x00, 0x00,                                                  // and     eax, 0FFFh
  67.     0x48, 0x8D, 0x0C, 0x07,                                                        // lea     rcx, [rdi+rax]
  68.     0x4C, 0x01, 0x1C, 0x0A,                                                        // add     [rdx+rcx], r11
  69.     0xEB, 0x10,                                                                    // jmp     short loc_140022065
  70.                                                                                    // loc_140022055:
  71.     0x41, 0x8B, 0x10,                                                              // mov     edx, [r8]
  72.     0x25, 0xFF, 0x0F, 0x00, 0x00,                                                  // and     eax, 0FFFh
  73.     0x48, 0x8D, 0x0C, 0x07,                                                        // lea     rcx, [rdi+rax]
  74.     0x44, 0x01, 0x1C, 0x0A,                                                        // add     [rdx+rcx], r11d
  75.                                                                                    // loc_140022065:
  76.     0x49, 0x83, 0xC2, 0x02,                                                        // add     r10, 2
  77.     0x41, 0x83, 0xC1, 0x02,                                                        // add     r9d, 2
  78.     0x45, 0x3B, 0x48, 0x04,                                                        // cmp     r9d, [r8+4]
  79.     0x72, 0xBD,                                                                    // jb      short loc_140022030
  80.                                                                                    // loc_140022073:
  81.     0x41, 0x8B, 0x40, 0x04,                                                        // mov     eax, [r8+4]
  82.     0x03, 0xD8,                                                                    // add     ebx, eax
  83.     0x4C, 0x03, 0xC0,                                                              // add     r8, rax
  84.     0x3B, 0xDE,                                                                    // cmp     ebx, esi
  85.     0x72, 0xA0,                                                                    // jb      short loc_140022020
  86.     0x45, 0x33, 0xC9,                                                              // xor     r9d, r9d
  87.                                                                                    // loc_140022083:
  88.     0x48, 0x8B, 0xB4, 0x24, 0xB0, 0x00, 0x00, 0x00,                                // mov     rsi, [rsp+98h+arg_10]
  89.                                                                                    // loc_14002208B:
  90.     0x48, 0x8B, 0x9C, 0x24, 0xA8, 0x00, 0x00, 0x00,                                // mov     rbx, [rsp+98h+arg_8]
  91.     0x49, 0x8B, 0xD7,                                                              // mov     rdx, r15
  92.     0x4C, 0x8B, 0xBC, 0x24, 0xB8, 0x00, 0x00, 0x00,                                // mov     r15, [rsp+98h+arg_18]
  93.     0x48, 0xC1, 0xEA, 0x03,                                                        // shr     rdx, 3
  94.     0x48, 0x85, 0xD2,                                                              // test    rdx, rdx
  95.     0x74, 0x1A,                                                                    // jz      short loc_1400220C1
  96.                                                                                    // loc_1400220A7:
  97.     0x48, 0x8B, 0xCD,                                                              // mov     rcx, rbp
  98.     0x48, 0x2B, 0xFD,                                                              // sub     rdi, rbp
  99.     0x0F, 0x1F, 0x00,                                                              // nop     dword ptr [rax]
  100.                                                                                    // loc_1400220B0:
  101.     0x48, 0x8B, 0x04, 0x0F,                                                        // mov     rax, [rdi+rcx]
  102.     0x48, 0x89, 0x01,                                                              // mov     [rcx], rax
  103.     0x48, 0x8D, 0x49, 0x08,                                                        // lea     rcx, [rcx+8]
  104.     0x48, 0x83, 0xEA, 0x01,                                                        // sub     rdx, 1
  105.     0x75, 0xEF,                                                                    // jnz     short loc_1400220B0
  106.                                                                                    // loc_1400220C1:
  107.     0x4C, 0x89, 0x4C, 0x24, 0x48,                                                  // mov     [rsp+98h+var_50], r9
  108.     0x4C, 0x8D, 0x44, 0x24, 0x40,                                                  // lea     r8, [rsp+98h+var_58]
  109.     0x4C, 0x89, 0x4C, 0x24, 0x50,                                                  // mov     [rsp+98h+var_48], r9
  110.     0x48, 0x8D, 0x8C, 0x24, 0xA0, 0x00, 0x00, 0x00,                                // lea     rcx, [rsp+98h+arg_0]
  111.     0x0F, 0x57, 0xC0,                                                              // xorps   xmm0, xmm0
  112.     0xC7, 0x44, 0x24, 0x40, 0x30, 0x00, 0x00, 0x00,                                // mov     [rsp+98h+var_58], 30h
  113.     0xF3, 0x0F, 0x7F, 0x44, 0x24, 0x60,                                            // movdqu  [rsp+98h+var_38], xmm0
  114.     0xC7, 0x44, 0x24, 0x58, 0x00, 0x02, 0x00, 0x00,                                // mov     [rsp+98h+var_40], 200h
  115.     0xBA, 0xFF, 0xFF, 0x1F, 0x00,                                                  // mov     edx, 1FFFFFh
  116.     0x41, 0x8B, 0x46, 0x28,                                                        // mov     eax, [r14+28h]
  117.     0x48, 0x03, 0xC5,                                                              // add     rax, rbp
  118.     0x4C, 0x89, 0x64, 0x24, 0x30,                                                  // mov     [rsp+98h+var_68], r12
  119.     0x48, 0x89, 0x44, 0x24, 0x28,                                                  // mov     [rsp+98h+var_70], rax
  120.     0x4C, 0x89, 0x4C, 0x24, 0x20,                                                  // mov     [rsp+98h+var_78], r9
  121.     0x45, 0x33, 0xC9,                                                              // xor     r9d, r9d
  122.     0x41, 0xFF, 0xD5,                                                              // call    r13
  123.     0x48, 0x83, 0xC4, 0x70,                                                        // add     rsp, 70h
  124.     0x41, 0x5E,                                                                    // pop     r14
  125.     0x41, 0x5D,                                                                    // pop     r13
  126.     0x41, 0x5C,                                                                    // pop     r12
  127.     0x5F,                                                                          // pop     rdi
  128.     0x5D,                                                                          // pop     rbp
  129.     0xC3                                                                           // retn
  130. };
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement