// File: /workspace/github_cpp_makefile_star2_O1/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 0x45b6(%rip), %rdi      # 0x1a6c7
callq 0x2260
leaq 0x3951(%rip), %rbx      # 0x19a6e
movq %rbx, %rdi
callq 0x2260
leaq 0x45b0(%rip), %rdi      # 0x1a6dc
callq 0x2260
leaq 0x45ed(%rip), %rdi      # 0x1a725
callq 0x2260
leaq 0x464f(%rip), %rdi      # 0x1a793
callq 0x2260
leaq 0x469a(%rip), %rdi      # 0x1a7ea
callq 0x2260
movq %rbx, %rdi
callq 0x2260
leaq 0x46ec(%rip), %rdi      # 0x1a850
callq 0x2260
leaq 0x475f(%rip), %rdi      # 0x1a8cf
callq 0x2260
leaq 0x4793(%rip), %rdi      # 0x1a90f
callq 0x2260
leaq 0x47c5(%rip), %rdi      # 0x1a94d
callq 0x2260
leaq 0x47ed(%rip), %rdi      # 0x1a981
callq 0x2260
leaq 0x4817(%rip), %rdi      # 0x1a9b7
callq 0x2260
leaq 0x4840(%rip), %rdi      # 0x1a9ec
callq 0x2260
leaq 0x488a(%rip), %rdi      # 0x1aa42
callq 0x2260
leaq 0x48e6(%rip), %rdi      # 0x1aaaa
callq 0x2260
leaq 0x492c(%rip), %rdi      # 0x1aafc
callq 0x2260
leaq 0x497f(%rip), %rdi      # 0x1ab5b
callq 0x2260
leaq 0x49e6(%rip), %rdi      # 0x1abce
callq 0x2260
leaq 0x4a39(%rip), %rdi      # 0x1ac2d
callq 0x2260
leaq 0x4a86(%rip), %rdi      # 0x1ac86
callq 0x2260
leaq 0x4aaa(%rip), %rdi      # 0x1acb6
addq $0x8, %rsp
popq %rbx
popq %rbp
jmp 0x2260
nop