// File: jmfenner92[P]Log-Parser/src/CmdRecord.cpp
// Function: CmdRecord::LookUpTable[abi:cxx11](int, int)
std::string CmdRecord::LookUpTable(int word, int bit_value)
{
	// declare necessary variables
	std::string printString = "";

	// switch over word number, then, possibly bit_value
	// while assembling printString
	switch(word)
	{
	case 0:
	{
		printString += "Word 0: Rec_Ctrl = ";
		switch(bit_value)
		{
		case 0: printString += "0 (no recording)"; break;
		case 2: printString += "2 (no processing)"; break;
		case 3: printString += "3 (processing & recording)"; break;
		default: printString += patch::to_string(bit_value) + " (unknown)"; break;
		}
		break;
	}	
	case 1:
	{
		printString += "Word 1: Cmd_Type = ";
		switch(bit_value)
		{
		case 4: printString += "4 (Type A)"; break;
		case 5:	printString += "5 (Type B)"; break;
		case 6: printString += "6 (Type C)"; break;
		default: printString += patch::to_string(bit_value) + " (unknown)"; break;
		}
		break;
	}
	case 4:
	{
		printString += "Word 4: Rec_Raw = ";
		switch(bit_value)
		{
		case 0: printString += "0 (disable)"; break;
		case 1: printString += "1 (enable)"; break;
		default: printString += patch::to_string(bit_value) + " (unknown)"; break;
		}
		break;
	}
	case 5: printString += "Word 5: Cmd_ID = " + patch::to_string(bit_value); break;
	case 10: printString += "Word 10: Num_Responses = " + patch::to_string(bit_value); break;
	case 15:
	{
		printString += "Word 15: Reset_Enable = ";
		switch(bit_value)
		{
		case 0: printString += "0 (disable)"; break;
		case 1: printString += "1 (enable)"; break;
		default: printString += patch::to_string(bit_value) + " (unknown)"; break;
		}
		break;
	}
	case 22:
	{
		printString += "Word 22: Direction = ";
		switch(bit_value)
		{
		case 0: printString += "0 (Right)"; break;
		case 1: printString += "1 (Left)"; break;
		default: printString += patch::to_string(bit_value) + " (unknown)"; break;
		}
		break;
	}	
	case 32: printString += "Word 32: Num_Samples = " + patch::to_string(bit_value); break;
	case 37:
	{
		printString += "Word 37: Parity = ";
		switch(bit_value)
		{
		case 0: printString += "0 (even)"; break;
		case 1: printString += "1 (odd)"; break;
		default: printString += patch::to_string(bit_value) + " (unknown)"; break;
		}
		break;
	}
	case 38:
	{
		printString += "Word 38: Test = ";
		switch(bit_value)
		{
		case 0: printString += "0 (disable)"; break;
		case 1: printString += "1 (enable)"; break;
		default: printString += patch::to_string(bit_value) + " (unknown)"; break;
		}
		break;
	}
	case 40:
	{
		printString += "Word 40: Ctrl_Enable = ";
		switch(bit_value)
		{
		case 0: printString += "0 (disable)"; break;
		case 1: printString += "1 (enable)"; break;
		default: printString += patch::to_string(bit_value) + " (unknown)"; break;
		}
		break;
	}
	case 41: printString += "Word 41: Code = " + patch::to_string(bit_value); break;
	default: printString += ""; break;
	}
	// attach endline to string?
	//printString += "\n";
	
	return printString;

}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x370, %rsp            # imm = 0x370
movq %rdi, -0x340(%rbp)
movq %rdi, %rax
movq %rax, -0x348(%rbp)
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
movl %edx, -0x14(%rbp)
movl %ecx, -0x18(%rbp)
movb $0x0, -0x19(%rbp)
leaq -0x1a(%rbp), %rdi
movq %rdi, -0x338(%rbp)
callq 0x33f0
movq -0x340(%rbp), %rdi
movq -0x338(%rbp), %rdx
leaq 0x3bba(%rip), %rsi      # 0x949d
callq 0x42d0
jmp 0x58ea
leaq -0x1a(%rbp), %rdi
callq 0x3280
movl -0x14(%rbp), %eax
movq %rax, -0x350(%rbp)
subq $0x29, %rax
ja 0x63c3
movq -0x350(%rbp), %rax
leaq 0x37fb(%rip), %rcx      # 0x9110
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x28(%rbp)
movl %eax, -0x2c(%rbp)
leaq -0x1a(%rbp), %rdi
callq 0x3280
jmp 0x640c
movq -0x340(%rbp), %rdi
leaq 0x38c2(%rip), %rsi      # 0x9208
callq 0x3200
jmp 0x594d
movl -0x18(%rbp), %eax
movl %eax, -0x354(%rbp)
testl %eax, %eax
je 0x5987
jmp 0x595c
movl -0x354(%rbp), %eax
subl $0x2, %eax
je 0x59a1
jmp 0x5969
movl -0x354(%rbp), %eax
subl $0x3, %eax
je 0x59bb
jmp 0x59d2
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x28(%rbp)
movl %eax, -0x2c(%rbp)
jmp 0x6400
movq -0x340(%rbp), %rdi
leaq 0x3887(%rip), %rsi      # 0x921c
callq 0x3200
jmp 0x599c
jmp 0x5a4e
movq -0x340(%rbp), %rdi
leaq 0x387e(%rip), %rsi      # 0x922d
callq 0x3200
jmp 0x59b6
jmp 0x5a4e
movq -0x340(%rbp), %rdi
leaq 0x3876(%rip), %rsi      # 0x923f
callq 0x3200
jmp 0x59d0
jmp 0x5a4e
leaq -0x70(%rbp), %rdi
leaq -0x18(%rbp), %rsi
callq 0x43b0
jmp 0x59e1
leaq 0x3872(%rip), %rdx      # 0x925a
leaq -0x50(%rbp), %rdi
leaq -0x70(%rbp), %rsi
callq 0x6790
jmp 0x59f7
movq -0x340(%rbp), %rdi
leaq -0x50(%rbp), %rsi
callq 0x3320
jmp 0x5a09
leaq -0x50(%rbp), %rdi
callq 0x3150
leaq -0x70(%rbp), %rdi
callq 0x3150
jmp 0x5a4e
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x28(%rbp)
movl %eax, -0x2c(%rbp)
jmp 0x5a40
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x28(%rbp)
movl %eax, -0x2c(%rbp)
leaq -0x50(%rbp), %rdi
callq 0x3150
leaq -0x70(%rbp), %rdi
callq 0x3150
jmp 0x6400
jmp 0x63da
movq -0x340(%rbp), %rdi
leaq 0x3804(%rip), %rsi      # 0x9265
callq 0x3200
jmp 0x5a68
movl -0x18(%rbp), %eax
movl %eax, -0x358(%rbp)
subl $0x4, %eax
je 0x5a92
jmp 0x5a78
movl -0x358(%rbp), %eax
subl $0x5, %eax
je 0x5aac
jmp 0x5a85
movl -0x358(%rbp), %eax
subl $0x6, %eax
je 0x5ac6
jmp 0x5ae0
movq -0x340(%rbp), %rdi
leaq 0x37d9(%rip), %rsi      # 0x9279
callq 0x3200
jmp 0x5aa7
jmp 0x5b74
movq -0x340(%rbp), %rdi
leaq 0x37ca(%rip), %rsi      # 0x9284
callq 0x3200
jmp 0x5ac1
jmp 0x5b74
movq -0x340(%rbp), %rdi
leaq 0x37bb(%rip), %rsi      # 0x928f
callq 0x3200
jmp 0x5adb
jmp 0x5b74
leaq -0xb0(%rbp), %rdi
leaq -0x18(%rbp), %rsi
callq 0x43b0
jmp 0x5af2
leaq 0x3761(%rip), %rdx      # 0x925a
leaq -0x90(%rbp), %rdi
leaq -0xb0(%rbp), %rsi
callq 0x6790
jmp 0x5b0e
movq -0x340(%rbp), %rdi
leaq -0x90(%rbp), %rsi
callq 0x3320
jmp 0x5b23
leaq -0x90(%rbp), %rdi
callq 0x3150
leaq -0xb0(%rbp), %rdi
callq 0x3150
jmp 0x5b74
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x28(%rbp)
movl %eax, -0x2c(%rbp)
jmp 0x5b63
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x28(%rbp)
movl %eax, -0x2c(%rbp)
leaq -0x90(%rbp), %rdi
callq 0x3150
leaq -0xb0(%rbp), %rdi
callq 0x3150
jmp 0x6400
jmp 0x63da
movq -0x340(%rbp), %rdi
leaq 0x3713(%rip), %rsi      # 0x929a
callq 0x3200
jmp 0x5b8e
movl -0x18(%rbp), %eax
movl %eax, -0x35c(%rbp)
testl %eax, %eax
je 0x5baa
jmp 0x5b9d
movl -0x35c(%rbp), %eax
subl $0x1, %eax
je 0x5bc4
jmp 0x5bde
movq -0x340(%rbp), %rdi
leaq 0x36f5(%rip), %rsi      # 0x92ad
callq 0x3200
jmp 0x5bbf
jmp 0x5c72
movq -0x340(%rbp), %rdi
leaq 0x36e7(%rip), %rsi      # 0x92b9
callq 0x3200
jmp 0x5bd9
jmp 0x5c72
leaq -0xf0(%rbp), %rdi
leaq -0x18(%rbp), %rsi
callq 0x43b0
jmp 0x5bf0
leaq 0x3663(%rip), %rdx      # 0x925a
leaq -0xd0(%rbp), %rdi
leaq -0xf0(%rbp), %rsi
callq 0x6790
jmp 0x5c0c
movq -0x340(%rbp), %rdi
leaq -0xd0(%rbp), %rsi
callq 0x3320
jmp 0x5c21
leaq -0xd0(%rbp), %rdi
callq 0x3150
leaq -0xf0(%rbp), %rdi
callq 0x3150
jmp 0x5c72
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x28(%rbp)
movl %eax, -0x2c(%rbp)
jmp 0x5c61
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x28(%rbp)
movl %eax, -0x2c(%rbp)
leaq -0xd0(%rbp), %rdi
callq 0x3150
leaq -0xf0(%rbp), %rdi
callq 0x3150
jmp 0x6400
jmp 0x63da
leaq -0x130(%rbp), %rdi
leaq -0x18(%rbp), %rsi
callq 0x43b0
jmp 0x5c89
leaq 0x3634(%rip), %rsi      # 0x92c4
leaq -0x110(%rbp), %rdi
leaq -0x130(%rbp), %rdx
callq 0x67e0
jmp 0x5ca5
movq -0x340(%rbp), %rdi
leaq -0x110(%rbp), %rsi
callq 0x3320
jmp 0x5cba
leaq -0x110(%rbp), %rdi
callq 0x3150
leaq -0x130(%rbp), %rdi
callq 0x3150
jmp 0x63da
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x28(%rbp)
movl %eax, -0x2c(%rbp)
jmp 0x5cfd
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x28(%rbp)
movl %eax, -0x2c(%rbp)
leaq -0x110(%rbp), %rdi
callq 0x3150
leaq -0x130(%rbp), %rdi
callq 0x3150
jmp 0x6400
leaq -0x170(%rbp), %rdi
leaq -0x18(%rbp), %rsi
callq 0x43b0
jmp 0x5d20
leaq 0x35af(%rip), %rsi      # 0x92d6
leaq -0x150(%rbp), %rdi
leaq -0x170(%rbp), %rdx
callq 0x67e0
jmp 0x5d3c
movq -0x340(%rbp), %rdi
leaq -0x150(%rbp), %rsi
callq 0x3320
jmp 0x5d51
leaq -0x150(%rbp), %rdi
callq 0x3150
leaq -0x170(%rbp), %rdi
callq 0x3150
jmp 0x63da
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x28(%rbp)
movl %eax, -0x2c(%rbp)
jmp 0x5d94
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x28(%rbp)
movl %eax, -0x2c(%rbp)
leaq -0x150(%rbp), %rdi
callq 0x3150
leaq -0x170(%rbp), %rdi
callq 0x3150
jmp 0x6400
movq -0x340(%rbp), %rdi
leaq 0x353d(%rip), %rsi      # 0x92f0
callq 0x3200
jmp 0x5dba
movl -0x18(%rbp), %eax
movl %eax, -0x360(%rbp)
testl %eax, %eax
je 0x5dd6
jmp 0x5dc9
movl -0x360(%rbp), %eax
subl $0x1, %eax
je 0x5df0
jmp 0x5e0a
movq -0x340(%rbp), %rdi
leaq 0x34c9(%rip), %rsi      # 0x92ad
callq 0x3200
jmp 0x5deb
jmp 0x5e9e
movq -0x340(%rbp), %rdi
leaq 0x34bb(%rip), %rsi      # 0x92b9
callq 0x3200
jmp 0x5e05
jmp 0x5e9e
leaq -0x1b0(%rbp), %rdi
leaq -0x18(%rbp), %rsi
callq 0x43b0
jmp 0x5e1c
leaq 0x3437(%rip), %rdx      # 0x925a
leaq -0x190(%rbp), %rdi
leaq -0x1b0(%rbp), %rsi
callq 0x6790
jmp 0x5e38
movq -0x340(%rbp), %rdi
leaq -0x190(%rbp), %rsi
callq 0x3320
jmp 0x5e4d
leaq -0x190(%rbp), %rdi
callq 0x3150
leaq -0x1b0(%rbp), %rdi
callq 0x3150
jmp 0x5e9e
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x28(%rbp)
movl %eax, -0x2c(%rbp)
jmp 0x5e8d
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x28(%rbp)
movl %eax, -0x2c(%rbp)
leaq -0x190(%rbp), %rdi
callq 0x3150
leaq -0x1b0(%rbp), %rdi
callq 0x3150
jmp 0x6400
jmp 0x63da
movq -0x340(%rbp), %rdi
leaq 0x3458(%rip), %rsi      # 0x9309
callq 0x3200
jmp 0x5eb8
movl -0x18(%rbp), %eax
movl %eax, -0x364(%rbp)
testl %eax, %eax
je 0x5ed4
jmp 0x5ec7
movl -0x364(%rbp), %eax
subl $0x1, %eax
je 0x5eee
jmp 0x5f08
movq -0x340(%rbp), %rdi
leaq 0x343d(%rip), %rsi      # 0x931f
callq 0x3200
jmp 0x5ee9
jmp 0x5f9c
movq -0x340(%rbp), %rdi
leaq 0x342d(%rip), %rsi      # 0x9329
callq 0x3200
jmp 0x5f03
jmp 0x5f9c
leaq -0x1f0(%rbp), %rdi
leaq -0x18(%rbp), %rsi
callq 0x43b0
jmp 0x5f1a
leaq 0x3339(%rip), %rdx      # 0x925a
leaq -0x1d0(%rbp), %rdi
leaq -0x1f0(%rbp), %rsi
callq 0x6790
jmp 0x5f36
movq -0x340(%rbp), %rdi
leaq -0x1d0(%rbp), %rsi
callq 0x3320
jmp 0x5f4b
leaq -0x1d0(%rbp), %rdi
callq 0x3150
leaq -0x1f0(%rbp), %rdi
callq 0x3150
jmp 0x5f9c
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x28(%rbp)
movl %eax, -0x2c(%rbp)
jmp 0x5f8b
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x28(%rbp)
movl %eax, -0x2c(%rbp)
leaq -0x1d0(%rbp), %rdi
callq 0x3150
leaq -0x1f0(%rbp), %rdi
callq 0x3150
jmp 0x6400
jmp 0x63da
leaq -0x230(%rbp), %rdi
leaq -0x18(%rbp), %rsi
callq 0x43b0
jmp 0x5fb3
leaq 0x3378(%rip), %rsi      # 0x9332
leaq -0x210(%rbp), %rdi
leaq -0x230(%rbp), %rdx
callq 0x67e0
jmp 0x5fcf
movq -0x340(%rbp), %rdi
leaq -0x210(%rbp), %rsi
callq 0x3320
jmp 0x5fe4
leaq -0x210(%rbp), %rdi
callq 0x3150
leaq -0x230(%rbp), %rdi
callq 0x3150
jmp 0x63da
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x28(%rbp)
movl %eax, -0x2c(%rbp)
jmp 0x6027
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x28(%rbp)
movl %eax, -0x2c(%rbp)
leaq -0x210(%rbp), %rdi
callq 0x3150
leaq -0x230(%rbp), %rdi
callq 0x3150
jmp 0x6400
movq -0x340(%rbp), %rdi
leaq 0x3304(%rip), %rsi      # 0x934a
callq 0x3200
jmp 0x604d
movl -0x18(%rbp), %eax
movl %eax, -0x368(%rbp)
testl %eax, %eax
je 0x6069
jmp 0x605c
movl -0x368(%rbp), %eax
subl $0x1, %eax
je 0x6083
jmp 0x609d
movq -0x340(%rbp), %rdi
leaq 0x32e6(%rip), %rsi      # 0x935d
callq 0x3200
jmp 0x607e
jmp 0x6131
movq -0x340(%rbp), %rdi
leaq 0x32d5(%rip), %rsi      # 0x9366
callq 0x3200
jmp 0x6098
jmp 0x6131
leaq -0x270(%rbp), %rdi
leaq -0x18(%rbp), %rsi
callq 0x43b0
jmp 0x60af
leaq 0x31a4(%rip), %rdx      # 0x925a
leaq -0x250(%rbp), %rdi
leaq -0x270(%rbp), %rsi
callq 0x6790
jmp 0x60cb
movq -0x340(%rbp), %rdi
leaq -0x250(%rbp), %rsi
callq 0x3320
jmp 0x60e0
leaq -0x250(%rbp), %rdi
callq 0x3150
leaq -0x270(%rbp), %rdi
callq 0x3150
jmp 0x6131
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x28(%rbp)
movl %eax, -0x2c(%rbp)
jmp 0x6120
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x28(%rbp)
movl %eax, -0x2c(%rbp)
leaq -0x250(%rbp), %rdi
callq 0x3150
leaq -0x270(%rbp), %rdi
callq 0x3150
jmp 0x6400
jmp 0x63da
movq -0x340(%rbp), %rdi
leaq 0x322a(%rip), %rsi      # 0x936e
callq 0x3200
jmp 0x614b
movl -0x18(%rbp), %eax
movl %eax, -0x36c(%rbp)
testl %eax, %eax
je 0x6167
jmp 0x615a
movl -0x36c(%rbp), %eax
subl $0x1, %eax
je 0x6181
jmp 0x619b
movq -0x340(%rbp), %rdi
leaq 0x3138(%rip), %rsi      # 0x92ad
callq 0x3200
jmp 0x617c
jmp 0x622f
movq -0x340(%rbp), %rdi
leaq 0x312a(%rip), %rsi      # 0x92b9
callq 0x3200
jmp 0x6196
jmp 0x622f
leaq -0x2b0(%rbp), %rdi
leaq -0x18(%rbp), %rsi
callq 0x43b0
jmp 0x61ad
leaq 0x30a6(%rip), %rdx      # 0x925a
leaq -0x290(%rbp), %rdi
leaq -0x2b0(%rbp), %rsi
callq 0x6790
jmp 0x61c9
movq -0x340(%rbp), %rdi
leaq -0x290(%rbp), %rsi
callq 0x3320
jmp 0x61de
leaq -0x290(%rbp), %rdi
callq 0x3150
leaq -0x2b0(%rbp), %rdi
callq 0x3150
jmp 0x622f
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x28(%rbp)
movl %eax, -0x2c(%rbp)
jmp 0x621e
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x28(%rbp)
movl %eax, -0x2c(%rbp)
leaq -0x290(%rbp), %rdi
callq 0x3150
leaq -0x2b0(%rbp), %rdi
callq 0x3150
jmp 0x6400
jmp 0x63da
movq -0x340(%rbp), %rdi
leaq 0x313d(%rip), %rsi      # 0x937f
callq 0x3200
jmp 0x6249
movl -0x18(%rbp), %eax
movl %eax, -0x370(%rbp)
testl %eax, %eax
je 0x6265
jmp 0x6258
movl -0x370(%rbp), %eax
subl $0x1, %eax
je 0x627f
jmp 0x6299
movq -0x340(%rbp), %rdi
leaq 0x303a(%rip), %rsi      # 0x92ad
callq 0x3200
jmp 0x627a
jmp 0x632d
movq -0x340(%rbp), %rdi
leaq 0x302c(%rip), %rsi      # 0x92b9
callq 0x3200
jmp 0x6294
jmp 0x632d
leaq -0x2f0(%rbp), %rdi
leaq -0x18(%rbp), %rsi
callq 0x43b0
jmp 0x62ab
leaq 0x2fa8(%rip), %rdx      # 0x925a
leaq -0x2d0(%rbp), %rdi
leaq -0x2f0(%rbp), %rsi
callq 0x6790
jmp 0x62c7
movq -0x340(%rbp), %rdi
leaq -0x2d0(%rbp), %rsi
callq 0x3320
jmp 0x62dc
leaq -0x2d0(%rbp), %rdi
callq 0x3150
leaq -0x2f0(%rbp), %rdi
callq 0x3150
jmp 0x632d
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x28(%rbp)
movl %eax, -0x2c(%rbp)
jmp 0x631c
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x28(%rbp)
movl %eax, -0x2c(%rbp)
leaq -0x2d0(%rbp), %rdi
callq 0x3150
leaq -0x2f0(%rbp), %rdi
callq 0x3150
jmp 0x6400
jmp 0x63da
leaq -0x330(%rbp), %rdi
leaq -0x18(%rbp), %rsi
callq 0x43b0
jmp 0x6344
leaq 0x304c(%rip), %rsi      # 0x9397
leaq -0x310(%rbp), %rdi
leaq -0x330(%rbp), %rdx
callq 0x67e0
jmp 0x6360
movq -0x340(%rbp), %rdi
leaq -0x310(%rbp), %rsi
callq 0x3320
jmp 0x6375
leaq -0x310(%rbp), %rdi
callq 0x3150
leaq -0x330(%rbp), %rdi
callq 0x3150
jmp 0x63da
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x28(%rbp)
movl %eax, -0x2c(%rbp)
jmp 0x63b5
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x28(%rbp)
movl %eax, -0x2c(%rbp)
leaq -0x310(%rbp), %rdi
callq 0x3150
leaq -0x330(%rbp), %rdi
callq 0x3150
jmp 0x6400
movq -0x340(%rbp), %rdi
leaq 0x30cc(%rip), %rsi      # 0x949d
callq 0x3200
jmp 0x63d8
jmp 0x63da
movb $0x1, -0x19(%rbp)
testb $0x1, -0x19(%rbp)
jne 0x63f0
movq -0x340(%rbp), %rdi
callq 0x3150
movq -0x348(%rbp), %rax
addq $0x370, %rsp            # imm = 0x370
popq %rbp
retq
movq -0x340(%rbp), %rdi
callq 0x3150
movq -0x28(%rbp), %rdi
callq 0x33e0
nopw %cs:(%rax,%rax)