in that pic, the "Exception Code: c0000005" line tells you what the problem is
the "Exception Offset: 00000000000533dd" line tells you where, in your code, it occurs
c0000005 is an ACCESS_VIOLATION
it happens when you try to access memory in a section that does not have the proper attribute
this is quite often caused by accessing memory at an address of 0 :P
so, i am guessing that the allocation fails, and RBX = 0 when you try to read the byte
if you disassemble or debug your code, i bet you'll find the MOV AL,[RBX] instruction is at address 533ddh
write a little test program, using the code as i have it in my previous post
the exception should not occur :t
i don't have a 64-bit machine, nor do i have GoAsm, or i would test it myself
there are a few differences in the code
for example, i use a flag of NULL, where you use generate exceptions
my code tests for success after the allocation