40a5fc:	50                   	push   %eax
40a5fd:	ff 15 d0 20 41 00    	call   *0x4120d0
40a603:	33 db                	xor    %ebx,%ebx
40a605:	43                   	inc    %ebx
40a606:	8b 4d ec             	mov    -0x14(%ebp),%ecx
40a609:	e8 1f b4 ff ff       	call   0x405a2d
40a60e:	8b 4d e8             	mov    -0x18(%ebp),%ecx
40a611:	e8 17 b4 ff ff       	call   0x405a2d
40a616:	8b 4d e4             	mov    -0x1c(%ebp),%ecx
40a619:	e8 0f b4 ff ff       	call   0x405a2d
40a61e:	8b 4d e0             	mov    -0x20(%ebp),%ecx
40a621:	e8 07 b4 ff ff       	call   0x405a2d
40a626:	8b 4d f4             	mov    -0xc(%ebp),%ecx
40a629:	e8 ff b3 ff ff       	call   0x405a2d
40a62e:	8b 4d f0             	mov    -0x10(%ebp),%ecx
40a631:	e8 f7 b3 ff ff       	call   0x405a2d
40a636:	8b 4d dc             	mov    -0x24(%ebp),%ecx
40a639:	e8 ef b3 ff ff       	call   0x405a2d
40a63e:	8b 4d 08             	mov    0x8(%ebp),%ecx
40a641:	e8 e7 b3 ff ff       	call   0x405a2d
40a646:	5f                   	pop    %edi
40a647:	5e                   	pop    %esi
40a648:	8b c3                	mov    %ebx,%eax
40a64a:	5b                   	pop    %ebx
40a64b:	c9                   	leave
40a64c:	c2 04 00             	ret    $0x4
40a64f:	53                   	push   %ebx
40a650:	56                   	push   %esi
40a651:	8b 35 dc 20 41 00    	mov    0x4120dc,%esi
40a657:	57                   	push   %edi
40a658:	8b f9                	mov    %ecx,%edi
40a65a:	ff b7 b4 00 00 00    	push   0xb4(%edi)
40a660:	ff d6                	call   *%esi
40a662:	ff b7 a8 00 00 00    	push   0xa8(%edi)
40a668:	33 db                	xor    %ebx,%ebx
40a66a:	89 9f b4 00 00 00    	mov    %ebx,0xb4(%edi)
40a670:	ff d6                	call   *%esi
40a672:	ff b7 ac 00 00 00    	push   0xac(%edi)
40a678:	89 9f a8 00 00 00    	mov    %ebx,0xa8(%edi)
40a67e:	ff d6                	call   *%esi
40a680:	ff b7 b8 00 00 00    	push   0xb8(%edi)
40a686:	89 9f ac 00 00 00    	mov    %ebx,0xac(%edi)
40a68c:	ff d6                	call   *%esi
40a68e:	ff b7 b0 00 00 00    	push   0xb0(%edi)
40a694:	89 9f b8 00 00 00    	mov    %ebx,0xb8(%edi)
40a69a:	ff d6                	call   *%esi
40a69c:	89 9f b0 00 00 00    	mov    %ebx,0xb0(%edi)
40a6a2:	5f                   	pop    %edi
40a6a3:	5e                   	pop    %esi
40a6a4:	5b                   	pop    %ebx
40a6a5:	c3                   	ret
40a6a6:	55                   	push   %ebp
40a6a7:	8b ec                	mov    %esp,%ebp
40a6a9:	81 ec 34 0e 00 00    	sub    $0xe34,%esp
40a6af:	8d 85 d0 f1 ff ff    	lea    -0xe30(%ebp),%eax
40a6b5:	53                   	push   %ebx
40a6b6:	56                   	push   %esi
40a6b7:	57                   	push   %edi
40a6b8:	bf 04 01 00 00       	mov    $0x104,%edi
40a6bd:	33 f6                	xor    %esi,%esi
40a6bf:	57                   	push   %edi
40a6c0:	56                   	push   %esi
40a6c1:	50                   	push   %eax
40a6c2:	8b d9                	mov    %ecx,%ebx
40a6c4:	e8 89 69 ff ff       	call   0x401052
40a6c9:	83 c4 0c             	add    $0xc,%esp
40a6cc:	8d 85 d0 f1 ff ff    	lea    -0xe30(%ebp),%eax
40a6d2:	50                   	push   %eax
40a6d3:	57                   	push   %edi
40a6d4:	ff 15 cc 20 41 00    	call   *0x4120cc
40a6da:	83 7d 0c 01          	cmpl   $0x1,0xc(%ebp)
40a6de:	0f 85 da 03 00 00    	jne    0x40aabe
40a6e4:	39 b3 b8 00 00 00    	cmp    %esi,0xb8(%ebx)
40a6ea:	74 2c                	je     0x40a718
40a6ec:	39 b3 ac 00 00 00    	cmp    %esi,0xac(%ebx)
40a6f2:	74 24                	je     0x40a718
40a6f4:	39 b3 b0 00 00 00    	cmp    %esi,0xb0(%ebx)
40a6fa:	74 1c                	je     0x40a718
40a6fc:	39 b3 bc 00 00 00    	cmp    %esi,0xbc(%ebx)
40a702:	74 14                	je     0x40a718
40a704:	39 b3 a4 00 00 00    	cmp    %esi,0xa4(%ebx)
40a70a:	74 0c                	je     0x40a718
40a70c:	39 b3 b4 00 00 00    	cmp    %esi,0xb4(%ebx)
40a712:	0f 85 a6 03 00 00    	jne    0x40aabe
40a718:	8b 0d 94 66 41 00    	mov    0x416694,%ecx
40a71e:	8d 45 e4             	lea    -0x1c(%ebp),%eax
40a721:	6a 05                	push   $0x5
40a723:	ff 71 08             	push   0x8(%ecx)
40a726:	8b 49 04             	mov    0x4(%ecx),%ecx
40a729:	50                   	push   %eax
40a72a:	e8 15 6d 00 00       	call   0x411444
40a72f:	39 75 e8             	cmp    %esi,-0x18(%ebp)
40a732:	75 0d                	jne    0x40a741
40a734:	8d 4d e4             	lea    -0x1c(%ebp),%ecx
40a737:	e8 2a 87 ff ff       	call   0x402e66
40a73c:	e9 6c 06 00 00       	jmp    0x40adad
40a741:	bf 00 01 00 00       	mov    $0x100,%edi
40a746:	8d 85 d8 f5 ff ff    	lea    -0xa28(%ebp),%eax
40a74c:	57                   	push   %edi
40a74d:	56                   	push   %esi
40a74e:	50                   	push   %eax
40a74f:	e8 fe 68 ff ff       	call   0x401052
40a754:	83 c4 0c             	add    $0xc,%esp
40a757:	8d 85 d8 fb ff ff    	lea    -0x428(%ebp),%eax
40a75d:	57                   	push   %edi
40a75e:	56                   	push   %esi
40a75f:	50                   	push   %eax
40a760:	e8 ed 68 ff ff       	call   0x401052
40a765:	83 c4 0c             	add    $0xc,%esp
40a768:	8d 85 d8 f7 ff ff    	lea    -0x828(%ebp),%eax
40a76e:	57                   	push   %edi
40a76f:	56                   	push   %esi
40a770:	50                   	push   %eax
40a771:	e8 dc 68 ff ff       	call   0x401052
40a776:	83 c4 0c             	add    $0xc,%esp
40a779:	8d 85 d8 f9 ff ff    	lea    -0x628(%ebp),%eax
40a77f:	57                   	push   %edi
40a780:	56                   	push   %esi
40a781:	50                   	push   %eax
40a782:	e8 cb 68 ff ff       	call   0x401052
40a787:	83 c4 0c             	add    $0xc,%esp
40a78a:	8d 85 d8 f3 ff ff    	lea    -0xc28(%ebp),%eax
40a790:	57                   	push   %edi
40a791:	56                   	push   %esi
40a792:	50                   	push   %eax
40a793:	e8 ba 68 ff ff       	call   0x401052
40a798:	83 c4 0c             	add    $0xc,%esp
40a79b:	8d 85 d8 fd ff ff    	lea    -0x228(%ebp),%eax
40a7a1:	57                   	push   %edi
40a7a2:	56                   	push   %esi
40a7a3:	50                   	push   %eax
40a7a4:	e8 a9 68 ff ff       	call   0x401052
40a7a9:	83 c4 0c             	add    $0xc,%esp
40a7ac:	be d0 19 05 00       	mov    $0x519d0,%esi
40a7b1:	56                   	push   %esi
40a7b2:	e8 f6 68 ff ff       	call   0x4010ad
40a7b7:	89 45 f4             	mov    %eax,-0xc(%ebp)
40a7ba:	c7 04 24 d0 17 02 00 	movl   $0x217d0,(%esp)
40a7c1:	e8 e7 68 ff ff       	call   0x4010ad
40a7c6:	89 45 f8             	mov    %eax,-0x8(%ebp)
40a7c9:	c7 04 24 38 b7 06 00 	movl   $0x6b738,(%esp)
40a7d0:	e8 d8 68 ff ff       	call   0x4010ad
40a7d5:	89 45 0c             	mov    %eax,0xc(%ebp)
40a7d8:	c7 04 24 d0 03 13 00 	movl   $0x1303d0,(%esp)
40a7df:	e8 c9 68 ff ff       	call   0x4010ad
40a7e4:	8b f8                	mov    %eax,%edi
40a7e6:	c7 04 24 d0 35 02 00 	movl   $0x235d0,(%esp)
40a7ed:	89 7d ec             	mov    %edi,-0x14(%ebp)
40a7f0:	e8 b8 68 ff ff       	call   0x4010ad
40a7f5:	89 45 f0             	mov    %eax,-0x10(%ebp)
40a7f8:	c7 04 24 48 47 01 00 	movl   $0x14748,(%esp)
40a7ff:	e8 a9 68 ff ff       	call   0x4010ad
40a804:	59                   	pop    %ecx
40a805:	56                   	push   %esi
40a806:	8b 75 e4             	mov    -0x1c(%ebp),%esi
40a809:	56                   	push   %esi
40a80a:	ff 75 f4             	push   -0xc(%ebp)
40a80d:	89 45 fc             	mov    %eax,-0x4(%ebp)
40a810:	e8 17 68 ff ff       	call   0x40102c
40a815:	83 c4 0c             	add    $0xc,%esp
40a818:	8d 8e d0 19 05 00    	lea    0x519d0(%esi),%ecx
40a81e:	68 d0 17 02 00       	push   $0x217d0
40a823:	51                   	push   %ecx
40a824:	ff 75 f8             	push   -0x8(%ebp)
40a827:	e8 00 68 ff ff       	call   0x40102c
40a82c:	83 c4 0c             	add    $0xc,%esp
40a82f:	8d 86 a0 31 07 00    	lea    0x731a0(%esi),%eax
40a835:	68 38 b7 06 00       	push   $0x6b738
40a83a:	50                   	push   %eax
40a83b:	ff 75 0c             	push   0xc(%ebp)
40a83e:	e8 e9 67 ff ff       	call   0x40102c
40a843:	83 c4 0c             	add    $0xc,%esp
40a846:	8d 86 d8 e8 0d 00    	lea    0xde8d8(%esi),%eax
40a84c:	68 d0 03 13 00       	push   $0x1303d0
40a851:	50                   	push   %eax
40a852:	57                   	push   %edi
40a853:	e8 d4 67 ff ff       	call   0x40102c
40a858:	83 c4 0c             	add    $0xc,%esp
40a85b:	8d 86 a8 ec 20 00    	lea    0x20eca8(%esi),%eax
40a861:	68 d0 35 02 00       	push   $0x235d0
40a866:	50                   	push   %eax
40a867:	ff 75 f0             	push   -0x10(%ebp)
40a86a:	e8 bd 67 ff ff       	call   0x40102c
40a86f:	83 c4 0c             	add    $0xc,%esp
40a872:	8d 86 78 22 23 00    	lea    0x232278(%esi),%eax
40a878:	68 48 47 01 00       	push   $0x14748
40a87d:	50                   	push   %eax
40a87e:	ff 75 fc             	push   -0x4(%ebp)
40a881:	e8 a6 67 ff ff       	call   0x40102c
40a886:	8b 3d bc 20 41 00    	mov    0x4120bc,%edi
40a88c:	8d 85 d8 fd ff ff    	lea    -0x228(%ebp),%eax
40a892:	83 c4 0c             	add    $0xc,%esp
40a895:	50                   	push   %eax
40a896:	68 00 01 00 00       	push   $0x100
40a89b:	ff d7                	call   *%edi
40a89d:	8d 85 d8 fd ff ff    	lea    -0x228(%ebp),%eax
40a8a3:	50                   	push   %eax
40a8a4:	ff 15 e0 20 41 00    	call   *0x4120e0
40a8aa:	8b 35 04 22 41 00    	mov    0x412204,%esi
40a8b0:	8d 85 d8 fd ff ff    	lea    -0x228(%ebp),%eax
40a8b6:	68 20 2c 41 00       	push   $0x412c20
40a8bb:	50                   	push   %eax
40a8bc:	ff d6                	call   *%esi
40a8be:	8d 85 d8 fb ff ff    	lea    -0x428(%ebp),%eax
40a8c4:	50                   	push   %eax
40a8c5:	68 00 01 00 00       	push   $0x100
40a8ca:	ff d7                	call   *%edi
40a8cc:	68 3c 2c 41 00       	push   $0x412c3c
40a8d1:	8d 85 d8 fb ff ff    	lea    -0x428(%ebp),%eax
40a8d7:	50                   	push   %eax
40a8d8:	ff d6                	call   *%esi
40a8da:	8d 85 d8 f7 ff ff    	lea    -0x828(%ebp),%eax
40a8e0:	50                   	push   %eax
40a8e1:	68 00 01 00 00       	push   $0x100
40a8e6:	ff d7                	call   *%edi
40a8e8:	68 58 2c 41 00       	push   $0x412c58
40a8ed:	8d 85 d8 f7 ff ff    	lea    -0x828(%ebp),%eax
40a8f3:	50                   	push   %eax
40a8f4:	ff d6                	call   *%esi
40a8f6:	8d 85 d8 f9 ff ff    	lea    -0x628(%ebp),%eax
40a8fc:	50                   	push   %eax
40a8fd:	68 00 01 00 00       	push   $0x100
40a902:	ff d7                	call   *%edi
40a904:	68 70 2c 41 00       	push   $0x412c70
40a909:	8d 85 d8 f9 ff ff    	lea    -0x628(%ebp),%eax
40a90f:	50                   	push   %eax
40a910:	ff d6                	call   *%esi
40a912:	8d 85 d8 f3 ff ff    	lea    -0xc28(%ebp),%eax
40a918:	50                   	push   %eax
40a919:	68 00 01 00 00       	push   $0x100
40a91e:	ff d7                	call   *%edi
40a920:	68 94 2c 41 00       	push   $0x412c94
40a925:	8d 85 d8 f3 ff ff    	lea    -0xc28(%ebp),%eax
40a92b:	50                   	push   %eax
40a92c:	ff d6                	call   *%esi
40a92e:	8d 85 d8 f5 ff ff    	lea    -0xa28(%ebp),%eax
40a934:	50                   	push   %eax
40a935:	68 00 01 00 00       	push   $0x100
40a93a:	ff d7                	call   *%edi
40a93c:	68 ac 2c 41 00       	push   $0x412cac
40a941:	8d 85 d8 f5 ff ff    	lea    -0xa28(%ebp),%eax
40a947:	50                   	push   %eax
40a948:	ff d6                	call   *%esi
40a94a:	8b 55 f0             	mov    -0x10(%ebp),%edx
40a94d:	85 d2                	test   %edx,%edx
40a94f:	0f 84 f4 00 00 00    	je     0x40aa49
40a955:	8b 4d 0c             	mov    0xc(%ebp),%ecx
40a958:	85 c9                	test   %ecx,%ecx
40a95a:	0f 84 e9 00 00 00    	je     0x40aa49
40a960:	83 7d f8 00          	cmpl   $0x0,-0x8(%ebp)
40a964:	0f 84 df 00 00 00    	je     0x40aa49
40a96a:	83 7d fc 00          	cmpl   $0x0,-0x4(%ebp)
40a96e:	0f 84 d5 00 00 00    	je     0x40aa49
40a974:	8b 7d f4             	mov    -0xc(%ebp),%edi
40a977:	85 ff                	test   %edi,%edi
40a979:	0f 84 ca 00 00 00    	je     0x40aa49
40a97f:	8b 75 ec             	mov    -0x14(%ebp),%esi
40a982:	85 f6                	test   %esi,%esi
40a984:	0f 84 bf 00 00 00    	je     0x40aa49
40a98a:	80 3a 4d             	cmpb   $0x4d,(%edx)
40a98d:	6a 5a                	push   $0x5a
40a98f:	58                   	pop    %eax
40a990:	75 1c                	jne    0x40a9ae
40a992:	38 42 01             	cmp    %al,0x1(%edx)
40a995:	75 17                	jne    0x40a9ae
40a997:	68 d0 35 02 00       	push   $0x235d0
40a99c:	8d 8d d8 fd ff ff    	lea    -0x228(%ebp),%ecx
40a9a2:	e8 0a 52 00 00       	call   0x40fbb1
40a9a7:	59                   	pop    %ecx
40a9a8:	8b 4d 0c             	mov    0xc(%ebp),%ecx
40a9ab:	6a 5a                	push   $0x5a
40a9ad:	58                   	pop    %eax
40a9ae:	80 39 4d             	cmpb   $0x4d,(%ecx)
40a9b1:	75 18                	jne    0x40a9cb
40a9b3:	38 41 01             	cmp    %al,0x1(%ecx)
40a9b6:	75 13                	jne    0x40a9cb
40a9b8:	8b d1                	mov    %ecx,%edx
40a9ba:	8d 8d d8 fb ff ff    	lea    -0x428(%ebp),%ecx
40a9c0:	68 38 b7 06 00       	push   $0x6b738
40a9c5:	e8 e7 51 00 00       	call   0x40fbb1
40a9ca:	59                   	pop    %ecx
40a9cb:	8b 45 f8             	mov    -0x8(%ebp),%eax
40a9ce:	80 38 4d             	cmpb   $0x4d,(%eax)
40a9d1:	75 19                	jne    0x40a9ec
40a9d3:	80 78 01 5a          	cmpb   $0x5a,0x1(%eax)
40a9d7:	75 13                	jne    0x40a9ec
40a9d9:	68 d0 17 02 00       	push   $0x217d0
40a9de:	8b d0                	mov    %eax,%edx
40a9e0:	8d 8d d8 f7 ff ff    	lea    -0x828(%ebp),%ecx
40a9e6:	e8 c6 51 00 00       	call   0x40fbb1
40a9eb:	59                   	pop    %ecx
40a9ec:	8b 45 fc             	mov    -0x4(%ebp),%eax
40a9ef:	80 38 4d             	cmpb   $0x4d,(%eax)
40a9f2:	75 19                	jne    0x40aa0d
40a9f4:	80 78 01 5a          	cmpb   $0x5a,0x1(%eax)
40a9f8:	75 13                	jne    0x40aa0d
40a9fa:	68 48 47 01 00       	push   $0x14748
40a9ff:	8b d0                	mov    %eax,%edx
40aa01:	8d 8d d8 f9 ff ff    	lea    -0x628(%ebp),%ecx
40aa07:	e8 a5 51 00 00       	call   0x40fbb1
40aa0c:	59                   	pop    %ecx
40aa0d:	80 3f 4d             	cmpb   $0x4d,(%edi)
40aa10:	75 19                	jne    0x40aa2b
40aa12:	80 7f 01 5a          	cmpb   $0x5a,0x1(%edi)
40aa16:	75 13                	jne    0x40aa2b
40aa18:	68 d0 19 05 00       	push   $0x519d0
40aa1d:	8b d7                	mov    %edi,%edx
40aa1f:	8d 8d d8 f3 ff ff    	lea    -0xc28(%ebp),%ecx
40aa25:	e8 87 51 00 00       	call   0x40fbb1
40aa2a:	59                   	pop    %ecx
40aa2b:	80 3e 4d             	cmpb   $0x4d,(%esi)
40aa2e:	75 19                	jne    0x40aa49
40aa30:	80 7e 01 5a          	cmpb   $0x5a,0x1(%esi)
40aa34:	75 13                	jne    0x40aa49
40aa36:	68 d0 03 13 00       	push   $0x1303d0
40aa3b:	8b d6                	mov    %esi,%edx
40aa3d:	8d 8d d8 f5 ff ff    	lea    -0xa28(%ebp),%ecx
40aa43:	e8 69 51 00 00       	call   0x40fbb1
40aa48:	59                   	pop    %ecx
40aa49:	8b 35 98 20 41 00    	mov    0x412098,%esi
40aa4f:	8d 85 d8 fb ff ff    	lea    -0x428(%ebp),%eax
40aa55:	50                   	push   %eax
40aa56:	ff d6                	call   *%esi
40aa58:	89 83 ac 00 00 00    	mov    %eax,0xac(%ebx)
40aa5e:	8d 85 d8 f9 ff ff    	lea    -0x628(%ebp),%eax
40aa64:	50                   	push   %eax
40aa65:	ff d6                	call   *%esi
40aa67:	89 83 bc 00 00 00    	mov    %eax,0xbc(%ebx)
40aa6d:	8d 85 d8 f7 ff ff    	lea    -0x828(%ebp),%eax
40aa73:	50                   	push   %eax
40aa74:	ff d6                	call   *%esi
40aa76:	89 83 b0 00 00 00    	mov    %eax,0xb0(%ebx)
40aa7c:	8d 85 d8 f5 ff ff    	lea    -0xa28(%ebp),%eax
40aa82:	50                   	push   %eax
40aa83:	ff d6                	call   *%esi
40aa85:	89 83 b4 00 00 00    	mov    %eax,0xb4(%ebx)
40aa8b:	8d 85 d8 fd ff ff    	lea    -0x228(%ebp),%eax
40aa91:	50                   	push   %eax
40aa92:	ff d6                	call   *%esi
40aa94:	89 83 b8 00 00 00    	mov    %eax,0xb8(%ebx)
40aa9a:	8d 85 d8 f3 ff ff    	lea    -0xc28(%ebp),%eax
40aaa0:	50                   	push   %eax
40aaa1:	ff d6                	call   *%esi
40aaa3:	6a 64                	push   $0x64
40aaa5:	89 83 a4 00 00 00    	mov    %eax,0xa4(%ebx)
40aaab:	ff 15 e4 21 41 00    	call   *0x4121e4
40aab1:	8d 4d e4             	lea    -0x1c(%ebp),%ecx
40aab4:	e8 ad 83 ff ff       	call   0x402e66
40aab9:	e9 1e 02 00 00       	jmp    0x40acdc
40aabe:	ff 75 08             	push   0x8(%ebp)