Disassembly: 
  L1: 8b ff ?? mov edi, edi
   55 ?? push ebp
   8b ec ?? mov ebp, esp
   83 ec 20 ?? sub esp, 0x20<32>
   a1 58 80 42 00 ?? mov eax, dword ds:[0x00428058]
   33 c5 ?? xor eax, ebp
   89 45 fc ?? mov dword ss:[ebp + 0xfc<252,-4>], eax
   8b 45 0c ?? mov eax, dword ss:[ebp + 12]
   53 ?? push ebx
   56 ?? push esi
   8b 75 1c ?? mov esi, dword ss:[ebp + 0x1c<28>]
   33 db ?? xor ebx, ebx
   2b c3 ?? sub eax, ebx
   57 ?? push edi
   74 13 ?? je basic block L5
  
  L2: 48 ?? dec eax
   74 08 ?? je basic block L4
  
  L3: 8b be a8 00 00 00 ?? mov edi, dword ds:[esi + 0x000000a8<168>]
   eb 0e ?? jmp basic block L6
  
  L4: 8b be a4 00 00 00 ?? mov edi, dword ds:[esi + 0x000000a4<164>]
   eb 06 ?? jmp basic block L6
  
  L5: 8b be a0 00 00 00 ?? mov edi, dword ds:[esi + 0x000000a0<160>]
  
  L6: 83 be b0 00 00 00 01 ?? cmp dword ds:[esi + 0x000000b0<176>], 1
   8b 45 10 ?? mov eax, dword ss:[ebp + 0x10<16>]
   0f 84 fe 00 00 00 ?? je basic block L30
  
  L7: 83 7d 0c 02 ?? cmp dword ss:[ebp + 12], 2
   8b 0d a0 a2 42 00 ?? mov ecx, dword ds:[0x0042a2a0]
   75 06 ?? jne basic block L9
  
  L8: 8b 0d 9c a2 42 00 ?? mov ecx, dword ds:[0x0042a29c]
  
  L9: ba 6c 07 00 00 ?? mov edx, 0x0000076c<1900>
   66 03 50 14 ?? add dx, word ds:[eax + 0x14<20>]
   53 ?? push ebx
   66 89 55 e0 ?? mov word ss:[ebp + 0xe0<224,-32>], dx
   66 8b 50 10 ?? mov dx, word ds:[eax + 0x10<16>]
   66 42 ?? inc dx
   66 89 55 e2 ?? mov word ss:[ebp + 0xe2<226,-30>], dx
   66 8b 50 0c ?? mov dx, word ds:[eax + 12]
   66 89 55 e6 ?? mov word ss:[ebp + 0xe6<230,-26>], dx
   66 8b 50 08 ?? mov dx, word ds:[eax + 8]
   66 89 55 e8 ?? mov word ss:[ebp + 0xe8<232,-24>], dx
   66 8b 50 04 ?? mov dx, word ds:[eax + 4]
   66 8b 00 ?? mov ax, word ds:[eax]
   66 89 45 ec ?? mov word ss:[ebp + 0xec<236,-20>], ax
   53 ?? push ebx
   33 c0 ?? xor eax, eax
   57 ?? push edi
   66 89 45 ee ?? mov word ss:[ebp + 0xee<238,-18>], ax
   8d 45 e0 ?? lea eax, ss:[ebp + 0xe0<224,-32>]
   50 ?? push eax
   53 ?? push ebx
   ff b6 ac 00 00 00 ?? push dword ds:[esi + 0x000000ac<172>]
   89 4d f4 ?? mov dword ss:[ebp + 0xf4<244,-12>], ecx
   66 89 55 ea ?? mov word ss:[ebp + 0xea<234,-22>], dx
   ff d1 ?? call ecx
  
  L10: 89 45 f0 ?? mov dword ss:[ebp + 0xf0<240,-16>], eax
   3b c3 ?? cmp eax, ebx
   0f 84 92 00 00 00 ?? je basic block L30
  
  L11: 83 c0 08 ?? add eax, 8
   3d 00 04 00 00 ?? cmp eax, 0x00000400<1024>
   7f 13 ?? jg basic block L15
  
  L12: e8 89 58 00 00 ?? call function 0x004178c0
  
  L13: 8b c4 ?? mov eax, esp
   3b c3 ?? cmp eax, ebx
   74 1c ?? je basic block L19
  
  L14: c7 00 cc cc 00 00 ?? mov dword ds:[eax], 0x0000cccc<52428>
   eb 11 ?? jmp basic block L18
  
  L15: 50 ?? push eax
   e8 e7 0c ff ff ?? call function 0x00402d32
  
  L16: 59 ?? pop ecx
   3b c3 ?? cmp eax, ebx
   74 09 ?? je basic block L19
  
  L17: c7 00 dd dd 00 00 ?? mov dword ds:[eax], 0x0000dddd<56797>
  
  L18: 83 c0 08 ?? add eax, 8
  
  L19: 89 45 f8 ?? mov dword ss:[ebp + 0xf8<248,-8>], eax
   3b c3 ?? cmp eax, ebx
   74 5a ?? je basic block L30
  
  L20: ff 75 f0 ?? push dword ss:[ebp + 0xf0<240,-16>]
   8b d8 ?? mov ebx, eax
   53 ?? push ebx
   57 ?? push edi
   8d 45 e0 ?? lea eax, ss:[ebp + 0xe0<224,-32>]
   50 ?? push eax
   6a 00 ?? push 0
   ff b6 ac 00 00 00 ?? push dword ds:[esi + 0x000000ac<172>]
   ff 55 f4 ?? call dword ss:[ebp + 0xf4<244,-12>]
  
  L21: 48 ?? dec eax
   85 c0 ?? test eax, eax
   7e 21 ?? jle basic block L25
  
  L22: 8b 75 18 ?? mov esi, dword ss:[ebp + 0x18<24>]
   8b 4d 14 ?? mov ecx, dword ss:[ebp + 0x14<20>]
  
  L23: 83 3e 00 ?? cmp dword ds:[esi], 0
   76 16 ?? jbe basic block L25
  
  L24: 8b 11 ?? mov edx, dword ds:[ecx]
   89 45 f0 ?? mov dword ss:[ebp + 0xf0<240,-16>], eax
   8a 03 ?? mov al, byte ds:[ebx]
   88 02 ?? mov byte ds:[edx], al
   ff 01 ?? inc dword ds:[ecx]
   8b 45 f0 ?? mov eax, dword ss:[ebp + 0xf0<240,-16>]
   43 ?? inc ebx
   ff 0e ?? dec dword ds:[esi]
   48 ?? dec eax
   85 c0 ?? test eax, eax
   7f e5 ?? jg basic block L23
  
  L25: ff 75 f8 ?? push dword ss:[ebp + 0xf8<248,-8>]
   e8 83 f4 ff ff ?? call function 0x00411527
  
  L26: 59 ?? pop ecx
  
  L27: 33 c0 ?? xor eax, eax
   40 ?? inc eax
  
  L28: 8d 65 d4 ?? lea esp, ss:[ebp + 0xd4<212,-44>]
   5f ?? pop edi
   5e ?? pop esi
   5b ?? pop ebx
   8b 4d fc ?? mov ecx, dword ss:[ebp + 0xfc<252,-4>]
   33 cd ?? xor ecx, ebp
   e8 ee ff fe ff ?? call function 0x004020a6
  
  L29: c9 ?? leave
   c3 ?? ret
  
  L30: 8a 07 ?? mov al, byte ds:[edi]
   84 c0 ?? test al, al
   74 e5 ?? je basic block L27
  
  L31: 8b 5d 18 ?? mov ebx, dword ss:[ebp + 0x18<24>]
   8b 75 14 ?? mov esi, dword ss:[ebp + 0x14<20>]
  
  L32: 83 3b 00 ?? cmp dword ds:[ebx], 0
   74 da ?? je basic block L27
  
  L33: 33 d2 ?? xor edx, edx
   89 55 f8 ?? mov dword ss:[ebp + 0xf8<248,-8>], edx
   8b cf ?? mov ecx, edi
  
  L34: 41 ?? inc ecx
   42 ?? inc edx
   38 01 ?? cmp byte ds:[ecx], al
  
  L35: 74 fa ?? je basic block L34
  
  L36: 89 4d f4 ?? mov dword ss:[ebp + 0xf4<244,-12>], ecx
   0f be c8 ?? movsx ecx, al
   83 f9 64 ?? cmp ecx, 0x64<100>
   0f 8f 82 01 00 00 ?? jg basic block L92
  
  L37: 0f 84 4e 01 00 00 ?? je basic block L84
  
  L38: 83 f9 27 ?? cmp ecx, 0x27<39>
   0f 84 d8 00 00 00 ?? je basic block L72
  
  L39: 83 f9 41 ?? cmp ecx, 0x41<65>
   0f 84 9b 00 00 00 ?? je basic block L64
  
  L40: 83 f9 48 ?? cmp ecx, 0x48<72>
   74 7e ?? je basic block L59
  
  L41: 83 f9 4d ?? cmp ecx, 0x4d<77>
   74 4f ?? je basic block L51
  
  L42: 83 f9 61 ?? cmp ecx, 0x61<97>
   0f 84 88 00 00 00 ?? je basic block L64
  
  L43: ff 75 08 ?? push dword ss:[ebp + 8]
   51 ?? push ecx
   e8 b4 54 00 00 ?? call function 0x004175cf
  
  L44: 59 ?? pop ecx
   59 ?? pop ecx
   85 c0 ?? test eax, eax
   74 1d ?? je basic block L48
  
  L45: 83 3b 01 ?? cmp dword ds:[ebx], 1
   76 18 ?? jbe basic block L48
  
  L46: 8d 47 01 ?? lea eax, ds:[edi + 1]
   80 38 00 ?? cmp byte ds:[eax], 0
   0f 84 9a 02 00 00 ?? je basic block L139
  
  L47: 8a 17 ?? mov dl, byte ds:[edi]
   8b 0e ?? mov ecx, dword ds:[esi]
   88 11 ?? mov byte ds:[ecx], dl
   ff 06 ?? inc dword ds:[esi]
   ff 0b ?? dec dword ds:[ebx]
   8b f8 ?? mov edi, eax
  
  L48: 8a 0f ?? mov cl, byte ds:[edi]
   8b 06 ?? mov eax, dword ds:[esi]
   88 08 ?? mov byte ds:[eax], cl
   ff 06 ?? inc dword ds:[esi]
   47 ?? inc edi
   ff 0b ?? dec dword ds:[ebx]
  
  L49: 8a 07 ?? mov al, byte ds:[edi]
   84 c0 ?? test al, al
   0f 85 73 ff ff ff ?? jne basic block L32
  
  L50: e9 4d ff ff ff ?? jmp basic block L27
  
  L51: 8b c2 ?? mov eax, edx
   48 ?? dec eax
   74 17 ?? je basic block L57
  
  L52: 48 ?? dec eax
   74 1b ?? je basic block L58
  
  L53: 48 ?? dec eax
   74 0a ?? je basic block L56
  
  L54: 48 ?? dec eax
   75 ac ?? jne basic block L43
  
  L55: b0 42 ?? mov al, 0x42<66>
   e9 3c 02 00 00 ?? jmp basic block L136
  
  L56: b0 62 ?? mov al, 0x62<98>
   e9 35 02 00 00 ?? jmp basic block L136
  
  L57: c7 45 f8 01 00 00 00 ?? mov dword ss:[ebp + 0xf8<248,-8>], 1
  
  L58: b0 6d ?? mov al, 0x6d<109>
   e9 27 02 00 00 ?? jmp basic block L136
  
  L59: 8b c2 ?? mov eax, edx
   48 ?? dec eax
   74 05 ?? je basic block L62
  
  L60: 48 ?? dec eax
   74 09 ?? je basic block L63
  
  L61: eb 86 ?? jmp basic block L43
  
  L62: c7 45 f8 01 00 00 00 ?? mov dword ss:[ebp + 0xf8<248,-8>], 1
  
  L63: b0 48 ?? mov al, 0x48<72>
   e9 0f 02 00 00 ?? jmp basic block L136
  
  L64: 68 48 58 42 00 ?? push 0x00425848<"am/pm">
   57 ?? push edi
   e8 ca 52 00 00 ?? call function 0x0041746f
  
  L65: 59 ?? pop ecx
   59 ?? pop ecx
   85 c0 ?? test eax, eax
   75 05 ?? jne basic block L67
  
  L66: 83 c7 05 ?? add edi, 5
   eb 14 ?? jmp basic block L70
  
  L67: 68 44 58 42 00 ?? push 0x00425844<"a/p">
   57 ?? push edi
   e8 b4 52 00 00 ?? call function 0x0041746f
  
  L68: 59 ?? pop ecx
   59 ?? pop ecx
   85 c0 ?? test eax, eax
   75 06 ?? jne basic block L71
  
  L69: 83 c7 03 ?? add edi, 3
  
  L70: 89 7d f4 ?? mov dword ss:[ebp + 0xf4<244,-12>], edi
  
  L71: b0 70 ?? mov al, 0x70<112>
   e9 db 01 00 00 ?? jmp basic block L136
  
  L72: 03 fa ?? add edi, edx
   f6 c2 01 ?? test dl, 1
   0f 84 70 ff ff ff ?? je basic block L49
  
  L73: 8a 07 ?? mov al, byte ds:[edi]
   84 c0 ?? test al, al
   0f 84 c2 fe ff ff ?? je basic block L27
  
  L74: 83 3b 00 ?? cmp dword ds:[ebx], 0
   0f 84 5d ff ff ff ?? je basic block L49
  
  L75: 3c 27 ?? cmp al, 0x27<39>
   74 45 ?? je basic block L83
  
  L76: ff 75 08 ?? push dword ss:[ebp + 8]
   0f be c0 ?? movsx eax, al
   50 ?? push eax
   e8 d3 53 00 00 ?? call function 0x004175cf
  
  L77: 59 ?? pop ecx
   59 ?? pop ecx
   85 c0 ?? test eax, eax
   74 1d ?? je basic block L81
  
  L78: 83 3b 01 ?? cmp dword ds:[ebx], 1
   76 18 ?? jbe basic block L81
  
  L79: 8d 47 01 ?? lea eax, ds:[edi + 1]
   80 38 00 ?? cmp byte ds:[eax], 0
   0f 84 b9 01 00 00 ?? je basic block L139
  
  L80: 8a 17 ?? mov dl, byte ds:[edi]
   8b 0e ?? mov ecx, dword ds:[esi]
   88 11 ?? mov byte ds:[ecx], dl
   ff 06 ?? inc dword ds:[esi]
   ff 0b ?? dec dword ds:[ebx]
   8b f8 ?? mov edi, eax
  
  L81: 8b 06 ?? mov eax, dword ds:[esi]
   8a 0f ?? mov cl, byte ds:[edi]
   88 08 ?? mov byte ds:[eax], cl
   ff 06 ?? inc dword ds:[esi]
   47 ?? inc edi
   ff 0b ?? dec dword ds:[ebx]
   8a 07 ?? mov al, byte ds:[edi]
   84 c0 ?? test al, al
   75 b3 ?? jne basic block L74
  
  L82: e9 14 ff ff ff ?? jmp basic block L49
  
  L83: 47 ?? inc edi
   e9 0e ff ff ff ?? jmp basic block L49
  
  L84: 8b c2 ?? mov eax, edx
   48 ?? dec eax
   74 1b ?? je basic block L90
  
  L85: 48 ?? dec eax
   74 1f ?? je basic block L91
  
  L86: 48 ?? dec eax
   74 0e ?? je basic block L89
  
  L87: 48 ?? dec eax
   0f 85 c5 fe ff ff ?? jne basic block L43
  
  L88: b0 41 ?? mov al, 0x41<65>
   e9 55 01 00 00 ?? jmp basic block L136
  
  L89: b0 61 ?? mov al, 0x61<97>
   e9 4e 01 00 00 ?? jmp basic block L136
  
  L90: c7 45 f8 01 00 00 00 ?? mov dword ss:[ebp + 0xf8<248,-8>], 1
  
  L91: b0 64 ?? mov al, 0x64<100>
   e9 40 01 00 00 ?? jmp basic block L136
  
  L92: 8b c1 ?? mov eax, ecx
   83 e8 68 ?? sub eax, 0x68<104>
   0f 84 1f 01 00 00 ?? je basic block L131
  
  L93: 83 e8 05 ?? sub eax, 5
   0f 84 fe 00 00 00 ?? je basic block L126
  
  L94: 83 e8 06 ?? sub eax, 6
   0f 84 dd 00 00 00 ?? je basic block L121
  
  L95: 48 ?? dec eax
   74 25 ?? je basic block L101
  
  L96: 83 e8 05 ?? sub eax, 5
   0f 85 80 fe ff ff ?? jne basic block L43
  
  L97: 8b c2 ?? mov eax, edx
   48 ?? dec eax
   48 ?? dec eax
   74 0f ?? je basic block L100
  
  L98: 48 ?? dec eax
   48 ?? dec eax
   0f 85 72 fe ff ff ?? jne basic block L43
  
  L99: b0 59 ?? mov al, 0x59<89>
   e9 02 01 00 00 ?? jmp basic block L136
  
  L100: b0 79 ?? mov al, 0x79<121>
   e9 fb 00 00 00 ?? jmp basic block L136
  
  L101: 8b 45 10 ?? mov eax, dword ss:[ebp + 0x10<16>]
   83 78 08 0b ?? cmp dword ds:[eax + 8], 11
   8b 45 1c ?? mov eax, dword ss:[ebp + 0x1c<28>]
   7f 08 ?? jg basic block L103
  
  L102: 8b b8 98 00 00 00 ?? mov edi, dword ds:[eax + 0x00000098<152>]
   eb 06 ?? jmp basic block L104
  
  L103: 8b b8 9c 00 00 00 ?? mov edi, dword ds:[eax + 0x0000009c<156>]
  
  L104: 83 fa 01 ?? cmp edx, 1
   0f 85 8a 00 00 00 ?? jne basic block L119
  
  L105: 83 3b 00 ?? cmp dword ds:[ebx], 0
   0f 86 81 00 00 00 ?? jbe basic block L119
  
  L106: 0f be 07 ?? movsx eax, byte ds:[edi]
   ff 75 08 ?? push dword ss:[ebp + 8]
   50 ?? push eax
   e8 e9 52 00 00 ?? call function 0x004175cf
  
  L107: 59 ?? pop ecx
   59 ?? pop ecx
   85 c0 ?? test eax, eax
   74 1d ?? je basic block L111
  
  L108: 83 3b 01 ?? cmp dword ds:[ebx], 1
   76 18 ?? jbe basic block L111
  
  L109: 8d 47 01 ?? lea eax, ds:[edi + 1]
   80 38 00 ?? cmp byte ds:[eax], 0
   0f 84 cf 00 00 00 ?? je basic block L139
  
  L110: 8a 17 ?? mov dl, byte ds:[edi]
   8b 0e ?? mov ecx, dword ds:[esi]
   88 11 ?? mov byte ds:[ecx], dl
   ff 06 ?? inc dword ds:[esi]
   ff 0b ?? dec dword ds:[ebx]
   8b f8 ?? mov edi, eax
  
  L111: 8b 06 ?? mov eax, dword ds:[esi]
   8a 0f ?? mov cl, byte ds:[edi]
   88 08 ?? mov byte ds:[eax], cl
   ff 06 ?? inc dword ds:[esi]
   ff 0b ?? dec dword ds:[ebx]
   e9 ac 00 00 00 ?? jmp basic block L138
  
  L112: 83 3b 00 ?? cmp dword ds:[ebx], 0
   0f 86 a3 00 00 00 ?? jbe basic block L138
  
  L113: ff 75 08 ?? push dword ss:[ebp + 8]
   0f be c0 ?? movsx eax, al
   50 ?? push eax
   e8 a2 52 00 00 ?? call function 0x004175cf
  
  L114: 59 ?? pop ecx
   59 ?? pop ecx
   85 c0 ?? test eax, eax
   74 1d ?? je basic block L118
  
  L115: 83 3b 01 ?? cmp dword ds:[ebx], 1
   76 18 ?? jbe basic block L118
  
  L116: 8d 47 01 ?? lea eax, ds:[edi + 1]
   80 38 00 ?? cmp byte ds:[eax], 0
   0f 84 88 00 00 00 ?? je basic block L139
  
  L117: 8a 17 ?? mov dl, byte ds:[edi]
   8b 0e ?? mov ecx, dword ds:[esi]
   88 11 ?? mov byte ds:[ecx], dl
   ff 06 ?? inc dword ds:[esi]
   ff 0b ?? dec dword ds:[ebx]
   8b f8 ?? mov edi, eax
  
  L118: 8a 0f ?? mov cl, byte ds:[edi]
   8b 06 ?? mov eax, dword ds:[esi]
   88 08 ?? mov byte ds:[eax], cl
   ff 06 ?? inc dword ds:[esi]
   47 ?? inc edi
   ff 0b ?? dec dword ds:[ebx]
  
  L119: 8a 07 ?? mov al, byte ds:[edi]
   84 c0 ?? test al, al
   75 b7 ?? jne basic block L112
  
  L120: eb 61 ?? jmp basic block L138
  
  L121: 8b c2 ?? mov eax, edx
   48 ?? dec eax
   74 08 ?? je basic block L124
  
  L122: 48 ?? dec eax
   74 0c ?? je basic block L125
  
  L123: e9 a2 fd ff ff ?? jmp basic block L43
  
  L124: c7 45 f8 01 00 00 00 ?? mov dword ss:[ebp + 0xf8<248,-8>], 1
  
  L125: b0 53 ?? mov al, 0x53<83>
   eb 2e ?? jmp basic block L136
  
  L126: 8b c2 ?? mov eax, edx
   48 ?? dec eax
   74 08 ?? je basic block L129
  
  L127: 48 ?? dec eax
   74 0c ?? je basic block L130
  
  L128: e9 8a fd ff ff ?? jmp basic block L43
  
  L129: c7 45 f8 01 00 00 00 ?? mov dword ss:[ebp + 0xf8<248,-8>], 1
  
  L130: b0 4d ?? mov al, 0x4d<77>
   eb 16 ?? jmp basic block L136
  
  L131: 8b c2 ?? mov eax, edx
   48 ?? dec eax
   74 08 ?? je basic block L134
  
  L132: 48 ?? dec eax
   74 0c ?? je basic block L135
  
  L133: e9 72 fd ff ff ?? jmp basic block L43
  
  L134: c7 45 f8 01 00 00 00 ?? mov dword ss:[ebp + 0xf8<248,-8>], 1
  
  L135: b0 49 ?? mov al, 0x49<73>
  
  L136: ff 75 f8 ?? push dword ss:[ebp + 0xf8<248,-8>]
   8b 55 10 ?? mov edx, dword ss:[ebp + 0x10<16>]
   ff 75 1c ?? push dword ss:[ebp + 0x1c<28>]
   8b ce ?? mov ecx, esi
   53 ?? push ebx
   ff 75 08 ?? push dword ss:[ebp + 8]
   e8 cd f7 ff ff ?? call function 0x00411b8a
  
  L137: 83 c4 10 ?? add esp, 0x10<16>
   85 c0 ?? test eax, eax
   74 08 ?? je basic block L139
  
  L138: 8b 7d f4 ?? mov edi, dword ss:[ebp + 0xf4<244,-12>]
   e9 7d fd ff ff ?? jmp basic block L49
  
  L139: 33 c0 ?? xor eax, eax
   e9 d5 fc ff ff ?? jmp basic block L28
  
  