Nun der Risszeiger sagt Ihnen die Anweisung, die den Absturz verursacht hat. Sie müssen es in einer Map-Datei nachschlagen.
In der Kartendatei haben Sie eine Liste von Funktionen und deren Startadresse. Wenn Sie die Anwendung laden, wird sie in eine Basisadresse geladen. Der RIP-Zeiger - die Basisadresse gibt Ihnen die Adresse der Map-Datei. Wenn Sie dann die Map-Datei nach einer Funktion durchsuchen, die bei einer Adresse beginnt, die etwas niedriger als Ihr RIP-Pointer ist und in der Liste von einer Funktion mit einer höheren Adresse gefolgt wird, haben Sie die Funktion gefunden, die abgestürzt ist.
Von dort müssen Sie versuchen zu identifizieren, was in Ihrem Code falsch gelaufen ist. Es ist nicht viel Spaß, aber es gibt Ihnen zumindest einen Ausgangspunkt.
Edit: Das Bit "segfault at" sagt Ihnen, ich würde wetten, dass Sie einen Nullzeiger dereferenziert haben. Der rsp ist der aktuelle Stapelzeiger. Leider ist es wahrscheinlich nicht so nützlich. Mit einem Speicherabzug können Sie genauer herausfinden, wo Sie in der Funktion waren, aber es kann sehr schwierig sein, genau herauszufinden, wo Sie sich in einem optimierten Build befinden.