int
, and the next two parameters at ❷ and ❸ are 64-bit values representing pointers.To determine the string that the malware is searching, we can use dynamic analysis to obtain the encoded value that the executable should be named. To do so, we use WinDbg (again, because OllyDbg does not support 64-bit executables). We open the program in WinDbg and set a breakpoint on the call to strncmp
, as shown in .
WinDbg output can sometimes be a bit verbose, so we’ll focus on the commands issued. We can’t set a breakpoint using bp strncmp
because WinDbg doesn’t know the location of strncmp
. However, IDA Pro uses signatures to find strncmp
, and from , we know that the call to strncmp
is at 0000000140001205. As shown in , at ❶, we use the u
instruction to verify the instructions at 0000000140001205, and then set a breakpoint on .