// File: jliesch[P]ofxget/ofxhome_test.cc
// Function: main
int main() {
  assertEq(AnonymizeRequest("<USERID>123"), "<USERID>X\n");
  assertEq(AnonymizeRequest("sdf\n<USERID>123<OTHER>"), "sdf\n<USERID>X\n<OTHER>");
  assertEq(AnonymizeRequest("<USERID>123<USERID>456"), "<USERID>X\n<USERID>X\n");
  assertEq(AnonymizeRequest("<ACCTID>123"), "<ACCTID>X\n");
  assertEq(AnonymizeRequest("<USERPASS>123"), "<USERPASS>X\n");
  return 0;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x2a0, %rsp            # imm = 0x2A0
movl $0x0, -0x4(%rbp)
leaq -0x49(%rbp), %rdi
movq %rdi, -0x250(%rbp)
callq 0x78f0
movq -0x250(%rbp), %rdx
leaq 0x6a75(%rip), %rsi      # 0x6f2f5
leaq -0x48(%rbp), %rdi
callq 0x77b0
jmp 0x6888b
leaq -0x28(%rbp), %rdi
leaq -0x48(%rbp), %rsi
callq 0xfc20
jmp 0x6889a
leaq -0x81(%rbp), %rdi
movq %rdi, -0x258(%rbp)
callq 0x78f0
movq -0x258(%rbp), %rdx
leaq 0x6a94(%rip), %rsi      # 0x6f34f
leaq -0x80(%rbp), %rdi
callq 0x77b0
jmp 0x688c6
leaq -0x28(%rbp), %rdi
leaq -0x80(%rbp), %rsi
callq 0x687b0
jmp 0x688d5
leaq -0x80(%rbp), %rdi
callq 0x7b88
leaq -0x81(%rbp), %rdi
callq 0x7b70
leaq -0x28(%rbp), %rdi
callq 0x7b88
leaq -0x48(%rbp), %rdi
callq 0x7b88
leaq -0x49(%rbp), %rdi
callq 0x7b70
leaq -0xc9(%rbp), %rdi
movq %rdi, -0x260(%rbp)
callq 0x78f0
movq -0x260(%rbp), %rdx
leaq 0x69db(%rip), %rsi      # 0x6f301
leaq -0xc8(%rbp), %rdi
callq 0x77b0
jmp 0x68934
leaq -0xa8(%rbp), %rdi
leaq -0xc8(%rbp), %rsi
callq 0xfc20
jmp 0x68949
leaq -0xf1(%rbp), %rdi
movq %rdi, -0x268(%rbp)
callq 0x78f0
movq -0x268(%rbp), %rdx
leaq 0x69ae(%rip), %rsi      # 0x6f318
leaq -0xf0(%rbp), %rdi
callq 0x77b0
jmp 0x68978
leaq -0xa8(%rbp), %rdi
leaq -0xf0(%rbp), %rsi
callq 0x687b0
jmp 0x6898d
leaq -0xf0(%rbp), %rdi
callq 0x7b88
leaq -0xf1(%rbp), %rdi
callq 0x7b70
leaq -0xa8(%rbp), %rdi
callq 0x7b88
leaq -0xc8(%rbp), %rdi
callq 0x7b88
leaq -0xc9(%rbp), %rdi
callq 0x7b70
leaq -0x139(%rbp), %rdi
movq %rdi, -0x270(%rbp)
callq 0x78f0
movq -0x270(%rbp), %rdx
leaq 0x6944(%rip), %rsi      # 0x6f32e
leaq -0x138(%rbp), %rdi
callq 0x77b0
jmp 0x689f8
leaq -0x118(%rbp), %rdi
leaq -0x138(%rbp), %rsi
callq 0xfc20
jmp 0x68a0d
leaq -0x161(%rbp), %rdi
movq %rdi, -0x278(%rbp)
callq 0x78f0
movq -0x278(%rbp), %rdx
leaq 0x6917(%rip), %rsi      # 0x6f345
leaq -0x160(%rbp), %rdi
callq 0x77b0
jmp 0x68a3c
leaq -0x118(%rbp), %rdi
leaq -0x160(%rbp), %rsi
callq 0x687b0
jmp 0x68a51
leaq -0x160(%rbp), %rdi
callq 0x7b88
leaq -0x161(%rbp), %rdi
callq 0x7b70
leaq -0x118(%rbp), %rdi
callq 0x7b88
leaq -0x138(%rbp), %rdi
callq 0x7b88
leaq -0x139(%rbp), %rdi
callq 0x7b70
leaq -0x1a9(%rbp), %rdi
movq %rdi, -0x280(%rbp)
callq 0x78f0
movq -0x280(%rbp), %rdx
leaq 0x68ac(%rip), %rsi      # 0x6f35a
leaq -0x1a8(%rbp), %rdi
callq 0x77b0
jmp 0x68abc
leaq -0x188(%rbp), %rdi
leaq -0x1a8(%rbp), %rsi
callq 0xfc20
jmp 0x68ad1
leaq -0x1d1(%rbp), %rdi
movq %rdi, -0x288(%rbp)
callq 0x78f0
movq -0x288(%rbp), %rdx
leaq 0xb13(%rip), %rsi       # 0x69605
leaq -0x1d0(%rbp), %rdi
callq 0x77b0
jmp 0x68b00
leaq -0x188(%rbp), %rdi
leaq -0x1d0(%rbp), %rsi
callq 0x687b0
jmp 0x68b15
leaq -0x1d0(%rbp), %rdi
callq 0x7b88
leaq -0x1d1(%rbp), %rdi
callq 0x7b70
leaq -0x188(%rbp), %rdi
callq 0x7b88
leaq -0x1a8(%rbp), %rdi
callq 0x7b88
leaq -0x1a9(%rbp), %rdi
callq 0x7b70
leaq -0x219(%rbp), %rdi
movq %rdi, -0x290(%rbp)
callq 0x78f0
movq -0x290(%rbp), %rdx
leaq 0x67f4(%rip), %rsi      # 0x6f366
leaq -0x218(%rbp), %rdi
callq 0x77b0
jmp 0x68b80
leaq -0x1f8(%rbp), %rdi
leaq -0x218(%rbp), %rsi
callq 0xfc20
jmp 0x68b95
leaq -0x241(%rbp), %rdi
movq %rdi, -0x298(%rbp)
callq 0x78f0
movq -0x298(%rbp), %rdx
leaq 0xa5a(%rip), %rsi       # 0x69610
leaq -0x240(%rbp), %rdi
callq 0x77b0
jmp 0x68bc4
leaq -0x1f8(%rbp), %rdi
leaq -0x240(%rbp), %rsi
callq 0x687b0
jmp 0x68bd9
leaq -0x240(%rbp), %rdi
callq 0x7b88
leaq -0x241(%rbp), %rdi
callq 0x7b70
leaq -0x1f8(%rbp), %rdi
callq 0x7b88
leaq -0x218(%rbp), %rdi
callq 0x7b88
leaq -0x219(%rbp), %rdi
callq 0x7b70
xorl %eax, %eax
addq $0x2a0, %rsp            # imm = 0x2A0
popq %rbp
retq
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
jmp 0x68c7d
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
jmp 0x68c74
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
jmp 0x68c5f
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
leaq -0x80(%rbp), %rdi
callq 0x7b88
leaq -0x81(%rbp), %rdi
callq 0x7b70
leaq -0x28(%rbp), %rdi
callq 0x7b88
leaq -0x48(%rbp), %rdi
callq 0x7b88
leaq -0x49(%rbp), %rdi
callq 0x7b70
jmp 0x68e5f
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
jmp 0x68cf1
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
jmp 0x68ce5
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
jmp 0x68ccd
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
leaq -0xf0(%rbp), %rdi
callq 0x7b88
leaq -0xf1(%rbp), %rdi
callq 0x7b70
leaq -0xa8(%rbp), %rdi
callq 0x7b88
leaq -0xc8(%rbp), %rdi
callq 0x7b88
leaq -0xc9(%rbp), %rdi
callq 0x7b70
jmp 0x68e5f
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
jmp 0x68d68
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
jmp 0x68d5c
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
jmp 0x68d44
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
leaq -0x160(%rbp), %rdi
callq 0x7b88
leaq -0x161(%rbp), %rdi
callq 0x7b70
leaq -0x118(%rbp), %rdi
callq 0x7b88
leaq -0x138(%rbp), %rdi
callq 0x7b88
leaq -0x139(%rbp), %rdi
callq 0x7b70
jmp 0x68e5f
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
jmp 0x68ddf
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
jmp 0x68dd3
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
jmp 0x68dbb
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
leaq -0x1d0(%rbp), %rdi
callq 0x7b88
leaq -0x1d1(%rbp), %rdi
callq 0x7b70
leaq -0x188(%rbp), %rdi
callq 0x7b88
leaq -0x1a8(%rbp), %rdi
callq 0x7b88
leaq -0x1a9(%rbp), %rdi
callq 0x7b70
jmp 0x68e5f
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
jmp 0x68e53
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
jmp 0x68e47
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
jmp 0x68e2f
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
leaq -0x240(%rbp), %rdi
callq 0x7b88
leaq -0x241(%rbp), %rdi
callq 0x7b70
leaq -0x1f8(%rbp), %rdi
callq 0x7b88
leaq -0x218(%rbp), %rdi
callq 0x7b88
leaq -0x219(%rbp), %rdi
callq 0x7b70
movq -0x58(%rbp), %rdi
callq 0x7600
nopl (%rax,%rax)