// File: /workspace/github_cpp_makefile_star2_O3/jeffchan[P]blockchain-parser/main.cpp
// Function: BlockChainCommand::help()
void help(void)
	{
		printf("Commands Available:\r\n");
		printf("\r\n");

		printf("max_blocks            : Specifies the maximum number of blocks to read.\r\n");
		printf("scan                  : Toggles scanning the blockchain headers pressing a key will pause or abort the scan.\r\n");
		printf("process               : Toggle processing all blocks; warning uses a lot of memory!..\r\n");
		printf("statistics            : Enables gathering detailed address/transaction statistics on the block chain\r\n");
		printf("\r\n");
		printf("stop_scan             : Stop's the scan of the blockchain headers and just builds the blockchain from where we are at so far.\r\n");
		printf("block <number>        : Will print the contents of this block.\r\n");
		printf("counts                : Report block and transaction counts.\r\n");
		printf("by_day                : Reports statistics by day.\r\n");
		printf("by_month              : Reports statistics by month.\r\n");
		printf("by_year               : Reports statistics by year.\r\n");
		printf("top_balance <n>       : Will output the addresses with the highest balance up to <n>\r\n");
		printf("min_balance <n>       : Specifies the minimum balance to use when generating a report. Default is 1BTC\r\n");
		printf("oldest <n>            : Outputs the <n> oldest addresses higher than min_balance\r\n");
		printf("adr <n>               : Outputs the transaction history relative to a specific bitcoinaddres.\r\n");
		printf("zombie <days>         : Report statitics about zombie coins; contents of addresses not used since this many days.\r\n");
		printf("record_addresses      : Toggles whether or not to record addresses when computing statistics.\r\n");
		printf("load_record           : Debugging feature, tries to load previously recorded addresses.\r\n");
		printf("help                  : Repeat these commands.\r\n");
		printf("exit, quit, or bye    : Will exit this tool\r\n");
	}

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %rbx
pushq %rax
leaq 0x4674(%rip), %rdi      # 0x1a6c7
callq 0x2260
leaq 0x3a0f(%rip), %rbx      # 0x19a6e
movq %rbx, %rdi
callq 0x2260
leaq 0x466e(%rip), %rdi      # 0x1a6dc
callq 0x2260
leaq 0x46ab(%rip), %rdi      # 0x1a725
callq 0x2260
leaq 0x470d(%rip), %rdi      # 0x1a793
callq 0x2260
leaq 0x4758(%rip), %rdi      # 0x1a7ea
callq 0x2260
movq %rbx, %rdi
callq 0x2260
leaq 0x47aa(%rip), %rdi      # 0x1a850
callq 0x2260
leaq 0x481d(%rip), %rdi      # 0x1a8cf
callq 0x2260
leaq 0x4851(%rip), %rdi      # 0x1a90f
callq 0x2260
leaq 0x4883(%rip), %rdi      # 0x1a94d
callq 0x2260
leaq 0x48ab(%rip), %rdi      # 0x1a981
callq 0x2260
leaq 0x48d5(%rip), %rdi      # 0x1a9b7
callq 0x2260
leaq 0x48fe(%rip), %rdi      # 0x1a9ec
callq 0x2260
leaq 0x4948(%rip), %rdi      # 0x1aa42
callq 0x2260
leaq 0x49a4(%rip), %rdi      # 0x1aaaa
callq 0x2260
leaq 0x49ea(%rip), %rdi      # 0x1aafc
callq 0x2260
leaq 0x4a3d(%rip), %rdi      # 0x1ab5b
callq 0x2260
leaq 0x4aa4(%rip), %rdi      # 0x1abce
callq 0x2260
leaq 0x4af7(%rip), %rdi      # 0x1ac2d
callq 0x2260
leaq 0x4b44(%rip), %rdi      # 0x1ac86
callq 0x2260
leaq 0x4b68(%rip), %rdi      # 0x1acb6
addq $0x8, %rsp
popq %rbx
popq %rbp
jmp 0x2260
nop