⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 disassembler.pas.bakup

📁 冒险岛吸怪源码UCE的制作材料 用于冒险岛游戏的外挂
💻 BAKUP
📖 第 1 页 / 共 5 页
字号:
           last:=sibbyte+1;
         end;

   $9b : begin
           result:='EBX+EBX*4';
           last:=sibbyte+1;
         end;

   $9c : begin
           result:='ESP+EBX*4';
           last:=sibbyte+1;
         end;

   $9d : begin
            dwordptr:=@memory[sibbyte+1];

            case getmod(memory[sibbyte-1]) of
              0 : begin
                    last:=sibbyte+1;
                    result:='EBX*4+$'+IntToHex(dwordptr^,8);
                  end;

              1 : begin
                    last:=sibbyte+2;
                    result:='EBP+EBX*4';
                  end;

              2 : begin
                    last:=sibbyte+1;
                    result:='EBP+EBX*4';
                  end;

              3 : begin
                    result:='error';
                  end;
            end;
         end;

   $9e : begin
           result:='ESI+EBX*4';
           last:=sibbyte+1;
         end;

   $9f : begin
           result:='EDI+EBX*4';
           last:=sibbyte+1;
         end;
//a0-a7 see 20-27
//a8-af
   $a8 : begin
           result:='EAX+EBP*4';
           last:=sibbyte+1;
         end;

   $a9 : begin
           result:='ECX+EBP*4';
           last:=sibbyte+1;
         end;

   $aa : begin
           result:='EDX+EBP*4';
           last:=sibbyte+1;
         end;

   $ab : begin
           result:='EBX+EBP*4';
           last:=sibbyte+1;
         end;

   $ac : begin
           result:='ESP+EBP*4';
           last:=sibbyte+1;
         end;

   $ad : begin
            dwordptr:=@memory[sibbyte+1];

            case getmod(memory[sibbyte-1]) of
              0 : begin
                    last:=sibbyte+1;
                    result:='EBP*4+$'+IntToHex(dwordptr^,8);
                  end;

              1 : begin
                    last:=sibbyte+2;
                    result:='EBP+EBP*4';
                  end;

              2 : begin
                    last:=sibbyte+1;
                    result:='EBP+EBP*4';
                  end;

              3 : begin
                    result:='error';
                  end;
            end;
         end;

   $ae : begin
           result:='ESI+EBP*4';
           last:=sibbyte+1;
         end;

   $af : begin
           result:='EDI+EBP*4';
           last:=sibbyte+1;
         end;

//b0-b7
   $b0 : begin
           result:='EAX+ESI*4';
           last:=sibbyte+1;
         end;

   $b1 : begin
           result:='ECX+ESI*4';
           last:=sibbyte+1;
         end;

   $b2 : begin
           result:='EDX+ESI*4';
           last:=sibbyte+1;
         end;

   $b3 : begin
           result:='EBX+ESI*4';
           last:=sibbyte+1;
         end;

   $b4 : begin
           result:='ESP+ESI*4';
           last:=sibbyte+1;
         end;

   $b5 : begin
            dwordptr:=@memory[sibbyte+1];

            case getmod(memory[sibbyte-1]) of
              0 : begin
                    last:=sibbyte+1;
                    result:='ESI*4+$'+IntToHex(dwordptr^,8);
                  end;

              1 : begin
                    last:=sibbyte+2;
                    result:='EBP+ESI*4';
                  end;

              2 : begin
                    last:=sibbyte+1;
                    result:='EBP+ESI*4';
                  end;

              3 : begin
                    result:='error';
                  end;
            end;
         end;

   $b6 : begin
           result:='ESI+ESI*4';
           last:=sibbyte+1;
         end;

   $b7 : begin
           result:='EDI+ESI*4';
           last:=sibbyte+1;
         end;
//b8-bf
   $b8 : begin
           result:='EAX+EDI*4';
           last:=sibbyte+1;
         end;

   $b9 : begin
           result:='ECX+EDI*4';
           last:=sibbyte+1;
         end;

   $ba : begin
           result:='EDX+EDI*4';
           last:=sibbyte+1;
         end;

   $bb : begin
           result:='EBX+EDI*4';
           last:=sibbyte+1;
         end;

   $bc : begin
           result:='ESP+EDI*4';
           last:=sibbyte+1;
         end;

   $bd : begin
            dwordptr:=@memory[sibbyte+1];

            case getmod(memory[sibbyte-1]) of
              0 : begin
                    last:=sibbyte+1;
                    result:='EDI*4+$'+IntToHex(dwordptr^,8);
                  end;

              1 : begin
                    last:=sibbyte+2;
                    result:='EBP+EDI*4';
                  end;

              2 : begin
                    last:=sibbyte+1;
                    result:='EBP+EDI*4';
                  end;

              3 : begin
                    result:='error';
                  end;
            end;
         end;

   $be : begin
           result:='ESI+EDI*4';
           last:=sibbyte+1;
         end;

   $bf : begin
           result:='EDI+EDI*4';
           last:=sibbyte+1;
         end;

//c0-ff same as 80-bf but with 8* instead of 4*
   $c0 : begin
           result:='EAX+EAX*8';
           last:=sibbyte+1;
         end;

   $c1 : begin
           result:='ECX+EAX*8';
           last:=sibbyte+1;
         end;

   $c2 : begin
           result:='EDX+EAX*8';
           last:=sibbyte+1;
         end;

   $c3 : begin
           result:='EBX+EAX*8';
           last:=sibbyte+1;
         end;

   $c4 : begin
           result:='ESP+EAX*8';
           last:=sibbyte+1;
         end;

   $c5 : begin
            dwordptr:=@memory[sibbyte+1];

            case getmod(memory[sibbyte-1]) of
              0 : begin
                    last:=sibbyte+1;
                    result:='EAX*8+$'+IntToHex(dwordptr^,8);
                  end;

              1 : begin
                    last:=sibbyte+2;
                    result:='EBP+EAX*8';
                  end;

              2 : begin
                    last:=sibbyte+1;
                    result:='EBP+EAX*8';
                  end;

              3 : begin
                    result:='error';
                  end;
            end;
         end;

   $c6 : begin
           result:='ESI+EAX*8';
           last:=sibbyte+1;
         end;

   $c7 : begin
           result:='EDI+EAX*8';
           last:=sibbyte+1;
         end;
//88-8f
   $c8 : begin
           result:='EAX+ECX*8';
           last:=sibbyte+1;
         end;

   $c9 : begin
           result:='ECX+ECX*8';
           last:=sibbyte+1;
         end;

   $ca : begin
           result:='EDX+ECX*8';
           last:=sibbyte+1;
         end;

   $cb : begin
           result:='EBX+ECX*8';
           last:=sibbyte+1;
         end;

   $cc : begin
           result:='ESP+ECX*8';
           last:=sibbyte+1;
         end;

   $cd : begin
            dwordptr:=@memory[sibbyte+1];

            case getmod(memory[sibbyte-1]) of
              0 : begin
                    last:=sibbyte+1;
                    result:='ECX*8+$'+IntToHex(dwordptr^,8);
                  end;

              1 : begin
                    last:=sibbyte+2;
                    result:='EBP+ECX*8';
                  end;

              2 : begin
                    last:=sibbyte+1;
                    result:='EBP+ECX*8';
                  end;

              3 : begin
                    result:='error';
                  end;
            end;
         end;

   $ce : begin
           result:='ESI+ECX*8';
           last:=sibbyte+1;
         end;

   $cf : begin
           result:='EDI+ECX*8';
           last:=sibbyte+1;
         end;

//90-97
   $d0 : begin
           result:='EAX+EDX*8';
           last:=sibbyte+1;
         end;

   $d1 : begin
           result:='ECX+EDX*8';
           last:=sibbyte+1;
         end;

   $d2 : begin
           result:='EDX+EDX*8';
           last:=sibbyte+1;
         end;

   $d3 : begin
           result:='EBX+EDX*8';
           last:=sibbyte+1;
         end;

   $d4 : begin
           result:='ESP+EDX*8';
           last:=sibbyte+1;
         end;

   $d5 : begin
            dwordptr:=@memory[sibbyte+1];

            case getmod(memory[sibbyte-1]) of
              0 : begin
                    last:=sibbyte+1;
                    result:='EDX*8+$'+IntToHex(dwordptr^,8);
                  end;

              1 : begin
                    last:=sibbyte+2;
                    result:='EBP+EDX*8';
                  end;

              2 : begin
                    last:=sibbyte+1;
                    result:='EBP+EDX*8';
                  end;

              3 : begin
                    result:='error';
                  end;
            end;
         end;

   $d6 : begin
           result:='ESI+EDX*8';
           last:=sibbyte+1;
         end;

   $d7 : begin
           result:='EDI+EDX*8';
           last:=sibbyte+1;
         end;
//98-9f
   $d8 : begin
           result:='EAX+EBX*8';
           last:=sibbyte+1;
         end;

   $d9 : begin
           result:='ECX+EBX*8';
           last:=sibbyte+1;
         end;

   $da : begin
           result:='EDX+EBX*8';
           last:=sibbyte+1;
         end;

   $db : begin
           result:='EBX+EBX*8';
           last:=sibbyte+1;
         end;

   $dc : begin
           result:='ESP+EBX*8';
           last:=sibbyte+1;
         end;

   $dd : begin
            dwordptr:=@memory[sibbyte+1];

            case getmod(memory[sibbyte-1]) of
              0 : begin
                    last:=sibbyte+1;
                    result:='EBX*8+$'+IntToHex(dwordptr^,8);
                  end;

              1 : begin
                    last:=sibbyte+2;
                    result:='EBP+EBX*8';
                  end;

              2 : begin
                    last:=sibbyte+1;
                    result:='EBP+EBX*8';
                  end;

              3 : begin
                    result:='error';
                  end;
            end;
         end;

   $de : begin
           result:='ESI+EBX*8';
           last:=sibbyte+1;
         end;

   $df : begin
           result:='EDI+EBX*8';
           last:=sibbyte+1;
         end;
//a0-a7 see 20-27
//a8-af
   $e8 : begin
           result:='EAX+EBP*8';
           last:=sibbyte+1;
         end;

   $e9 : begin
           result:='ECX+EBP*8';
           last:=sibbyte+1;
         end;

   $ea : begin
           result:='EDX+EBP*8';
           last:=sibbyte+1;
         end;

   $eb : begin
           result:='EBX+EBP*8';
           last:=sibbyte+1;
         end;

   $ec : begin
           result:='ESP+EBP*8';
           last:=sibbyte+1;
         end;

   $ed : begin
            dwordptr:=@memory[sibbyte+1];

            case getmod(memory[sibbyte-1]) of

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -