diff --git a/irdb-libs/ir_builders/fill_in_indtargs.cpp b/irdb-libs/ir_builders/fill_in_indtargs.cpp
index 1c10d9243813b7cfefcfd392ce3609ea8317c958..800d8bcccce3a7615a882d9834a5b4d81e2de23d 100644
--- a/irdb-libs/ir_builders/fill_in_indtargs.cpp
+++ b/irdb-libs/ir_builders/fill_in_indtargs.cpp
@@ -2496,11 +2496,11 @@ V2:
 			 */
 			if (!d6->getOperand(1)->hasBaseRegister())
 				return;
-			const auto base_reg = regNoToX8664Reg(d6->getOperand(1)->getBaseRegister());
+			const auto base_reg = regNoToX8664Reg((int32_t) d6->getOperand(1)->getBaseRegister());
 
 			if (!d6->getOperand(1)->hasIndexRegister())
 				return;
-			index_reg_no = d6->getOperand(1)->getIndexRegister();
+			index_reg_no = (int32_t) d6->getOperand(1)->getIndexRegister();
 			const auto index_reg_64bit = regNoToX8664Reg(index_reg_no);
             const auto index_reg_32bit = regNoToX8632Reg(index_reg_no);
             const auto index_reg_16bit = regNoToX8616Reg(index_reg_no);
@@ -2809,10 +2809,15 @@ V2:
                 // Do the same search again starting from this move and check for a comparison with the temporary register
                 const auto index_reg_64bit = regNoToX8664Reg(index_reg_no);
                 const auto index_reg_32bit = regNoToX8632Reg(index_reg_no);
-                const auto temp_index_reg_64bit = regNoToX8664Reg(decoded_instr->getOperand(1)->getRegNumber());
-                const auto temp_index_reg_32bit = regNoToX8632Reg(decoded_instr->getOperand(1)->getRegNumber());
-                const auto temp_index_reg_16bit = regNoToX8616Reg(decoded_instr->getOperand(1)->getRegNumber());
-                const auto temp_index_reg_8bit = regNoToX868Reg(decoded_instr->getOperand(1)->getRegNumber());
+                const auto temp_index_reg_64bit =
+                        regNoToX8664Reg((int32_t) decoded_instr->getOperand(1)->getRegNumber());
+                const auto temp_index_reg_32bit =
+                        regNoToX8632Reg((int32_t) decoded_instr->getOperand(1)->getRegNumber());
+                const auto temp_index_reg_16bit =
+                        regNoToX8616Reg((int32_t) decoded_instr->getOperand(1)->getRegNumber());
+                const auto temp_index_reg_8bit  =
+                        regNoToX868Reg((int32_t) decoded_instr->getOperand(1)->getRegNumber());
+
                 if(index_reg_32bit.empty() || index_reg_64bit.empty()){
                     cout << "WARNING: Could not detect index register for table load at " <<
                         hex << table_load_instruction->getAddress()->getVirtualOffset() << endl;