40d6cd:	a1 14 0e 43 00       	mov    0x430e14,%eax
40d6d2:	eb 60                	jmp    0x40d734
40d6d4:	ff 77 5c             	push   0x5c(%edi)
40d6d7:	8b d3                	mov    %ebx,%edx
40d6d9:	e8 5d ff ff ff       	call   0x40d63b
40d6de:	8b f0                	mov    %eax,%esi
40d6e0:	83 c6 08             	add    $0x8,%esi
40d6e3:	8b 06                	mov    (%esi),%eax
40d6e5:	eb 5a                	jmp    0x40d741
40d6e7:	8b c3                	mov    %ebx,%eax
40d6e9:	83 e8 0f             	sub    $0xf,%eax
40d6ec:	74 3c                	je     0x40d72a
40d6ee:	83 e8 06             	sub    $0x6,%eax
40d6f1:	74 2b                	je     0x40d71e
40d6f3:	48                   	dec    %eax
40d6f4:	74 1c                	je     0x40d712
40d6f6:	e8 da 83 ff ff       	call   0x405ad5
40d6fb:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
40d701:	33 c0                	xor    %eax,%eax
40d703:	50                   	push   %eax
40d704:	50                   	push   %eax
40d705:	50                   	push   %eax
40d706:	50                   	push   %eax
40d707:	50                   	push   %eax
40d708:	e8 18 7b ff ff       	call   0x405225
40d70d:	83 c4 14             	add    $0x14,%esp
40d710:	eb ae                	jmp    0x40d6c0
40d712:	be 1c 0e 43 00       	mov    $0x430e1c,%esi
40d717:	a1 1c 0e 43 00       	mov    0x430e1c,%eax
40d71c:	eb 16                	jmp    0x40d734
40d71e:	be 18 0e 43 00       	mov    $0x430e18,%esi
40d723:	a1 18 0e 43 00       	mov    0x430e18,%eax
40d728:	eb 0a                	jmp    0x40d734
40d72a:	be 20 0e 43 00       	mov    $0x430e20,%esi
40d72f:	a1 20 0e 43 00       	mov    0x430e20,%eax
40d734:	c7 45 e4 01 00 00 00 	movl   $0x1,-0x1c(%ebp)
40d73b:	50                   	push   %eax
40d73c:	e8 b4 d0 ff ff       	call   0x40a7f5
40d741:	89 45 e0             	mov    %eax,-0x20(%ebp)
40d744:	59                   	pop    %ecx
40d745:	33 c0                	xor    %eax,%eax
40d747:	83 7d e0 01          	cmpl   $0x1,-0x20(%ebp)
40d74b:	0f 84 d8 00 00 00    	je     0x40d829
40d751:	39 45 e0             	cmp    %eax,-0x20(%ebp)
40d754:	75 07                	jne    0x40d75d
40d756:	6a 03                	push   $0x3
40d758:	e8 c5 f1 ff ff       	call   0x40c922
40d75d:	39 45 e4             	cmp    %eax,-0x1c(%ebp)
40d760:	74 07                	je     0x40d769
40d762:	50                   	push   %eax
40d763:	e8 7c c1 ff ff       	call   0x4098e4
40d768:	59                   	pop    %ecx
40d769:	33 c0                	xor    %eax,%eax
40d76b:	89 45 fc             	mov    %eax,-0x4(%ebp)
40d76e:	83 fb 08             	cmp    $0x8,%ebx
40d771:	74 0a                	je     0x40d77d
40d773:	83 fb 0b             	cmp    $0xb,%ebx
40d776:	74 05                	je     0x40d77d
40d778:	83 fb 04             	cmp    $0x4,%ebx
40d77b:	75 1b                	jne    0x40d798
40d77d:	8b 4f 60             	mov    0x60(%edi),%ecx
40d780:	89 4d d4             	mov    %ecx,-0x2c(%ebp)
40d783:	89 47 60             	mov    %eax,0x60(%edi)
40d786:	83 fb 08             	cmp    $0x8,%ebx
40d789:	75 40                	jne    0x40d7cb
40d78b:	8b 4f 64             	mov    0x64(%edi),%ecx
40d78e:	89 4d d0             	mov    %ecx,-0x30(%ebp)
40d791:	c7 47 64 8c 00 00 00 	movl   $0x8c,0x64(%edi)
40d798:	83 fb 08             	cmp    $0x8,%ebx
40d79b:	75 2e                	jne    0x40d7cb
40d79d:	8b 0d 90 b7 42 00    	mov    0x42b790,%ecx
40d7a3:	89 4d dc             	mov    %ecx,-0x24(%ebp)
40d7a6:	8b 0d 94 b7 42 00    	mov    0x42b794,%ecx
40d7ac:	8b 15 90 b7 42 00    	mov    0x42b790,%edx
40d7b2:	03 ca                	add    %edx,%ecx
40d7b4:	39 4d dc             	cmp    %ecx,-0x24(%ebp)
40d7b7:	7d 19                	jge    0x40d7d2
40d7b9:	8b 4d dc             	mov    -0x24(%ebp),%ecx
40d7bc:	6b c9 0c             	imul   $0xc,%ecx,%ecx
40d7bf:	8b 57 5c             	mov    0x5c(%edi),%edx
40d7c2:	89 44 11 08          	mov    %eax,0x8(%ecx,%edx,1)
40d7c6:	ff 45 dc             	incl   -0x24(%ebp)
40d7c9:	eb db                	jmp    0x40d7a6
40d7cb:	e8 1c d0 ff ff       	call   0x40a7ec
40d7d0:	89 06                	mov    %eax,(%esi)
40d7d2:	c7 45 fc fe ff ff ff 	movl   $0xfffffffe,-0x4(%ebp)
40d7d9:	e8 15 00 00 00       	call   0x40d7f3
40d7de:	83 fb 08             	cmp    $0x8,%ebx
40d7e1:	75 1f                	jne    0x40d802
40d7e3:	ff 77 64             	push   0x64(%edi)
40d7e6:	53                   	push   %ebx
40d7e7:	ff 55 e0             	call   *-0x20(%ebp)
40d7ea:	59                   	pop    %ecx
40d7eb:	eb 19                	jmp    0x40d806
40d7ed:	8b 5d 08             	mov    0x8(%ebp),%ebx
40d7f0:	8b 7d d8             	mov    -0x28(%ebp),%edi
40d7f3:	83 7d e4 00          	cmpl   $0x0,-0x1c(%ebp)
40d7f7:	74 08                	je     0x40d801
40d7f9:	6a 00                	push   $0x0
40d7fb:	e8 0a c0 ff ff       	call   0x40980a
40d800:	59                   	pop    %ecx
40d801:	c3                   	ret
40d802:	53                   	push   %ebx
40d803:	ff 55 e0             	call   *-0x20(%ebp)
40d806:	59                   	pop    %ecx
40d807:	83 fb 08             	cmp    $0x8,%ebx
40d80a:	74 0a                	je     0x40d816
40d80c:	83 fb 0b             	cmp    $0xb,%ebx
40d80f:	74 05                	je     0x40d816
40d811:	83 fb 04             	cmp    $0x4,%ebx
40d814:	75 11                	jne    0x40d827
40d816:	8b 45 d4             	mov    -0x2c(%ebp),%eax
40d819:	89 47 60             	mov    %eax,0x60(%edi)
40d81c:	83 fb 08             	cmp    $0x8,%ebx
40d81f:	75 06                	jne    0x40d827
40d821:	8b 45 d0             	mov    -0x30(%ebp),%eax
40d824:	89 47 64             	mov    %eax,0x64(%edi)
40d827:	33 c0                	xor    %eax,%eax
40d829:	e8 f3 cb ff ff       	call   0x40a421
40d82e:	c3                   	ret
40d82f:	6a 10                	push   $0x10
40d831:	68 f0 97 42 00       	push   $0x4297f0
40d836:	e8 a1 cb ff ff       	call   0x40a3dc
40d83b:	33 c0                	xor    %eax,%eax
40d83d:	8b 5d 08             	mov    0x8(%ebp),%ebx
40d840:	33 ff                	xor    %edi,%edi
40d842:	3b df                	cmp    %edi,%ebx
40d844:	0f 95 c0             	setne  %al
40d847:	3b c7                	cmp    %edi,%eax
40d849:	75 1d                	jne    0x40d868
40d84b:	e8 85 82 ff ff       	call   0x405ad5
40d850:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
40d856:	57                   	push   %edi
40d857:	57                   	push   %edi
40d858:	57                   	push   %edi
40d859:	57                   	push   %edi
40d85a:	57                   	push   %edi
40d85b:	e8 c5 79 ff ff       	call   0x405225
40d860:	83 c4 14             	add    $0x14,%esp
40d863:	83 c8 ff             	or     $0xffffffff,%eax
40d866:	eb 53                	jmp    0x40d8bb
40d868:	83 3d a0 23 c7 00 03 	cmpl   $0x3,0xc723a0
40d86f:	75 38                	jne    0x40d8a9
40d871:	6a 04                	push   $0x4
40d873:	e8 6c c0 ff ff       	call   0x4098e4
40d878:	59                   	pop    %ecx
40d879:	89 7d fc             	mov    %edi,-0x4(%ebp)
40d87c:	53                   	push   %ebx
40d87d:	e8 95 c0 ff ff       	call   0x409917
40d882:	59                   	pop    %ecx
40d883:	89 45 e0             	mov    %eax,-0x20(%ebp)
40d886:	3b c7                	cmp    %edi,%eax
40d888:	74 0b                	je     0x40d895
40d88a:	8b 73 fc             	mov    -0x4(%ebx),%esi
40d88d:	83 ee 09             	sub    $0x9,%esi
40d890:	89 75 e4             	mov    %esi,-0x1c(%ebp)
40d893:	eb 03                	jmp    0x40d898
40d895:	8b 75 e4             	mov    -0x1c(%ebp),%esi
40d898:	c7 45 fc fe ff ff ff 	movl   $0xfffffffe,-0x4(%ebp)
40d89f:	e8 25 00 00 00       	call   0x40d8c9
40d8a4:	39 7d e0             	cmp    %edi,-0x20(%ebp)
40d8a7:	75 10                	jne    0x40d8b9
40d8a9:	53                   	push   %ebx
40d8aa:	57                   	push   %edi
40d8ab:	ff 35 08 08 43 00    	push   0x430808
40d8b1:	ff 15 40 a1 41 00    	call   *0x41a140
40d8b7:	8b f0                	mov    %eax,%esi
40d8b9:	8b c6                	mov    %esi,%eax
40d8bb:	e8 61 cb ff ff       	call   0x40a421
40d8c0:	c3                   	ret
40d8c1:	33 ff                	xor    %edi,%edi
40d8c3:	8b 5d 08             	mov    0x8(%ebp),%ebx
40d8c6:	8b 75 e4             	mov    -0x1c(%ebp),%esi
40d8c9:	6a 04                	push   $0x4
40d8cb:	e8 3a bf ff ff       	call   0x40980a
40d8d0:	59                   	pop    %ecx
40d8d1:	c3                   	ret
40d8d2:	8b ff                	mov    %edi,%edi
40d8d4:	55                   	push   %ebp
40d8d5:	8b ec                	mov    %esp,%ebp
40d8d7:	56                   	push   %esi
40d8d8:	8d 45 08             	lea    0x8(%ebp),%eax
40d8db:	50                   	push   %eax
40d8dc:	8b f1                	mov    %ecx,%esi
40d8de:	e8 bf 75 ff ff       	call   0x404ea2
40d8e3:	c7 06 e0 cb 41 00    	movl   $0x41cbe0,(%esi)
40d8e9:	8b c6                	mov    %esi,%eax
40d8eb:	5e                   	pop    %esi
40d8ec:	5d                   	pop    %ebp
40d8ed:	c2 04 00             	ret    $0x4
40d8f0:	c7 01 e0 cb 41 00    	movl   $0x41cbe0,(%ecx)
40d8f6:	e9 74 76 ff ff       	jmp    0x404f6f
40d8fb:	8b ff                	mov    %edi,%edi
40d8fd:	55                   	push   %ebp
40d8fe:	8b ec                	mov    %esp,%ebp
40d900:	56                   	push   %esi
40d901:	8b f1                	mov    %ecx,%esi
40d903:	c7 06 e0 cb 41 00    	movl   $0x41cbe0,(%esi)
40d909:	e8 61 76 ff ff       	call   0x404f6f
40d90e:	f6 45 08 01          	testb  $0x1,0x8(%ebp)
40d912:	74 07                	je     0x40d91b
40d914:	56                   	push   %esi
40d915:	e8 1c 7a ff ff       	call   0x405336
40d91a:	59                   	pop    %ecx
40d91b:	8b c6                	mov    %esi,%eax
40d91d:	5e                   	pop    %esi
40d91e:	5d                   	pop    %ebp
40d91f:	c2 04 00             	ret    $0x4
40d922:	8b ff                	mov    %edi,%edi
40d924:	55                   	push   %ebp
40d925:	8b ec                	mov    %esp,%ebp
40d927:	56                   	push   %esi
40d928:	57                   	push   %edi
40d929:	8b 7d 08             	mov    0x8(%ebp),%edi
40d92c:	8b 47 04             	mov    0x4(%edi),%eax
40d92f:	85 c0                	test   %eax,%eax
40d931:	74 47                	je     0x40d97a
40d933:	8d 50 08             	lea    0x8(%eax),%edx
40d936:	80 3a 00             	cmpb   $0x0,(%edx)
40d939:	74 3f                	je     0x40d97a
40d93b:	8b 75 0c             	mov    0xc(%ebp),%esi
40d93e:	8b 4e 04             	mov    0x4(%esi),%ecx
40d941:	3b c1                	cmp    %ecx,%eax
40d943:	74 14                	je     0x40d959
40d945:	83 c1 08             	add    $0x8,%ecx
40d948:	51                   	push   %ecx
40d949:	52                   	push   %edx
40d94a:	e8 e1 e8 ff ff       	call   0x40c230
40d94f:	59                   	pop    %ecx
40d950:	59                   	pop    %ecx
40d951:	85 c0                	test   %eax,%eax
40d953:	74 04                	je     0x40d959
40d955:	33 c0                	xor    %eax,%eax
40d957:	eb 24                	jmp    0x40d97d
40d959:	f6 06 02             	testb  $0x2,(%esi)
40d95c:	74 05                	je     0x40d963
40d95e:	f6 07 08             	testb  $0x8,(%edi)
40d961:	74 f2                	je     0x40d955
40d963:	8b 45 10             	mov    0x10(%ebp),%eax
40d966:	8b 00                	mov    (%eax),%eax
40d968:	a8 01                	test   $0x1,%al
40d96a:	74 05                	je     0x40d971
40d96c:	f6 07 01             	testb  $0x1,(%edi)
40d96f:	74 e4                	je     0x40d955
40d971:	a8 02                	test   $0x2,%al
40d973:	74 05                	je     0x40d97a
40d975:	f6 07 02             	testb  $0x2,(%edi)
40d978:	74 db                	je     0x40d955
40d97a:	33 c0                	xor    %eax,%eax
40d97c:	40                   	inc    %eax
40d97d:	5f                   	pop    %edi
40d97e:	5e                   	pop    %esi
40d97f:	5d                   	pop    %ebp
40d980:	c3                   	ret
40d981:	8b ff                	mov    %edi,%edi
40d983:	55                   	push   %ebp
40d984:	8b ec                	mov    %esp,%ebp
40d986:	8b 45 08             	mov    0x8(%ebp),%eax
40d989:	8b 00                	mov    (%eax),%eax
40d98b:	8b 00                	mov    (%eax),%eax
40d98d:	3d 4d 4f 43 e0       	cmp    $0xe0434f4d,%eax
40d992:	74 18                	je     0x40d9ac
40d994:	3d 63 73 6d e0       	cmp    $0xe06d7363,%eax
40d999:	75 2b                	jne    0x40d9c6
40d99b:	e8 a1 d0 ff ff       	call   0x40aa41
40d9a0:	83 a0 90 00 00 00 00 	andl   $0x0,0x90(%eax)
40d9a7:	e9 df 0b 00 00       	jmp    0x40e58b
40d9ac:	e8 90 d0 ff ff       	call   0x40aa41
40d9b1:	83 b8 90 00 00 00 00 	cmpl   $0x0,0x90(%eax)
40d9b8:	7e 0c                	jle    0x40d9c6
40d9ba:	e8 82 d0 ff ff       	call   0x40aa41
40d9bf:	05 90 00 00 00       	add    $0x90,%eax
40d9c4:	ff 08                	decl   (%eax)
40d9c6:	33 c0                	xor    %eax,%eax
40d9c8:	5d                   	pop    %ebp
40d9c9:	c3                   	ret
40d9ca:	6a 10                	push   $0x10
40d9cc:	68 10 98 42 00       	push   $0x429810
40d9d1:	e8 06 ca ff ff       	call   0x40a3dc
40d9d6:	8b 7d 10             	mov    0x10(%ebp),%edi
40d9d9:	8b 5d 08             	mov    0x8(%ebp),%ebx
40d9dc:	81 7f 04 80 00 00 00 	cmpl   $0x80,0x4(%edi)
40d9e3:	7f 06                	jg     0x40d9eb
40d9e5:	0f be 73 08          	movsbl 0x8(%ebx),%esi
40d9e9:	eb 03                	jmp    0x40d9ee
40d9eb:	8b 73 08             	mov    0x8(%ebx),%esi
40d9ee:	89 75 e4             	mov    %esi,-0x1c(%ebp)
40d9f1:	e8 4b d0 ff ff       	call   0x40aa41
40d9f6:	05 90 00 00 00       	add    $0x90,%eax
40d9fb:	ff 00                	incl   (%eax)
40d9fd:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
40da01:	3b 75 14             	cmp    0x14(%ebp),%esi
40da04:	74 65                	je     0x40da6b
40da06:	83 fe ff             	cmp    $0xffffffff,%esi
40da09:	7e 05                	jle    0x40da10
40da0b:	3b 77 04             	cmp    0x4(%edi),%esi
40da0e:	7c 05                	jl     0x40da15
40da10:	e8 c2 0b 00 00       	call   0x40e5d7
40da15:	8b c6                	mov    %esi,%eax
40da17:	c1 e0 03             	shl    $0x3,%eax
40da1a:	8b 4f 08             	mov    0x8(%edi),%ecx
40da1d:	03 c8                	add    %eax,%ecx
40da1f:	8b 31                	mov    (%ecx),%esi
40da21:	89 75 e0             	mov    %esi,-0x20(%ebp)
40da24:	c7 45 fc 01 00 00 00 	movl   $0x1,-0x4(%ebp)
40da2b:	83 79 04 00          	cmpl   $0x0,0x4(%ecx)
40da2f:	74 15                	je     0x40da46
40da31:	89 73 08             	mov    %esi,0x8(%ebx)
40da34:	68 03 01 00 00       	push   $0x103
40da39:	53                   	push   %ebx
40da3a:	8b 4f 08             	mov    0x8(%edi),%ecx
40da3d:	ff 74 01 04          	push   0x4(%ecx,%eax,1)
40da41:	e8 da 0b 00 00       	call   0x40e620
40da46:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
40da4a:	eb 1a                	jmp    0x40da66
40da4c:	ff 75 ec             	push   -0x14(%ebp)
40da4f:	e8 2d ff ff ff       	call   0x40d981
40da54:	59                   	pop    %ecx
40da55:	c3                   	ret
40da56:	8b 65 e8             	mov    -0x18(%ebp),%esp
40da59:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
40da5d:	8b 7d 10             	mov    0x10(%ebp),%edi
40da60:	8b 5d 08             	mov    0x8(%ebp),%ebx
40da63:	8b 75 e0             	mov    -0x20(%ebp),%esi
40da66:	89 75 e4             	mov    %esi,-0x1c(%ebp)
40da69:	eb 96                	jmp    0x40da01
40da6b:	c7 45 fc fe ff ff ff 	movl   $0xfffffffe,-0x4(%ebp)
40da72:	e8 19 00 00 00       	call   0x40da90
40da77:	3b 75 14             	cmp    0x14(%ebp),%esi
40da7a:	74 05                	je     0x40da81
40da7c:	e8 56 0b 00 00       	call   0x40e5d7
40da81:	89 73 08             	mov    %esi,0x8(%ebx)
40da84:	e8 98 c9 ff ff       	call   0x40a421
40da89:	c3                   	ret
40da8a:	8b 5d 08             	mov    0x8(%ebp),%ebx
40da8d:	8b 75 e4             	mov    -0x1c(%ebp),%esi
40da90:	e8 ac cf ff ff       	call   0x40aa41
40da95:	83 b8 90 00 00 00 00 	cmpl   $0x0,0x90(%eax)
40da9c:	7e 0c                	jle    0x40daaa
40da9e:	e8 9e cf ff ff       	call   0x40aa41
40daa3:	05 90 00 00 00       	add    $0x90,%eax
40daa8:	ff 08                	decl   (%eax)
40daaa:	c3                   	ret
40daab:	8b 00                	mov    (%eax),%eax
40daad:	81 38 63 73 6d e0    	cmpl   $0xe06d7363,(%eax)
40dab3:	75 38                	jne    0x40daed
40dab5:	83 78 10 03          	cmpl   $0x3,0x10(%eax)
40dab9:	75 32                	jne    0x40daed
40dabb:	8b 48 14             	mov    0x14(%eax),%ecx
40dabe:	81 f9 20 05 93 19    	cmp    $0x19930520,%ecx