40c94d:	8b cb                	mov    %ebx,%ecx
40c94f:	e8 18 03 00 00       	call   0x40cc6c
40c954:	39 7d ec             	cmp    %edi,-0x14(%ebp)
40c957:	74 11                	je     0x40c96a
40c959:	6a 05                	push   $0x5
40c95b:	5e                   	pop    %esi
40c95c:	39 7b 10             	cmp    %edi,0x10(%ebx)
40c95f:	75 11                	jne    0x40c972
40c961:	8b cb                	mov    %ebx,%ecx
40c963:	e8 83 01 00 00       	call   0x40caeb
40c968:	eb 08                	jmp    0x40c972
40c96a:	83 fe 04             	cmp    $0x4,%esi
40c96d:	7e 03                	jle    0x40c972
40c96f:	6a 04                	push   $0x4
40c971:	5e                   	pop    %esi
40c972:	8b 4b 0c             	mov    0xc(%ebx),%ecx
40c975:	85 c9                	test   %ecx,%ecx
40c977:	74 06                	je     0x40c97f
40c979:	56                   	push   %esi
40c97a:	e8 60 26 00 00       	call   0x40efdf
40c97f:	83 fe 05             	cmp    $0x5,%esi
40c982:	75 0c                	jne    0x40c990
40c984:	c7 05 18 98 41 00 14 	movl   $0x20014,0x419818
40c98b:	00 02 00
40c98e:	eb 44                	jmp    0x40c9d4
40c990:	83 fe 04             	cmp    $0x4,%esi
40c993:	75 0c                	jne    0x40c9a1
40c995:	c7 05 18 98 41 00 22 	movl   $0x100022,0x419818
40c99c:	00 10 00
40c99f:	eb 33                	jmp    0x40c9d4
40c9a1:	83 fe 02             	cmp    $0x2,%esi
40c9a4:	75 0c                	jne    0x40c9b2
40c9a6:	c7 05 18 98 41 00 12 	movl   $0x20012,0x419818
40c9ad:	00 02 00
40c9b0:	eb 22                	jmp    0x40c9d4
40c9b2:	83 fe 03             	cmp    $0x3,%esi
40c9b5:	75 0c                	jne    0x40c9c3
40c9b7:	c7 05 18 98 41 00 13 	movl   $0x20013,0x419818
40c9be:	00 02 00
40c9c1:	eb 11                	jmp    0x40c9d4
40c9c3:	4e                   	dec    %esi
40c9c4:	f7 de                	neg    %esi
40c9c6:	1b f6                	sbb    %esi,%esi
40c9c8:	81 c6 11 00 02 00    	add    $0x20011,%esi
40c9ce:	89 35 18 98 41 00    	mov    %esi,0x419818
40c9d4:	8b c7                	mov    %edi,%eax
40c9d6:	e8 41 72 00 00       	call   0x413c1c
40c9db:	c2 08 00             	ret    $0x8
40c9de:	cc                   	int3
40c9df:	cc                   	int3
40c9e0:	8b ff                	mov    %edi,%edi
40c9e2:	56                   	push   %esi
40c9e3:	57                   	push   %edi
40c9e4:	68 eb 03 00 00       	push   $0x3eb
40c9e9:	8b f9                	mov    %ecx,%edi
40c9eb:	33 f6                	xor    %esi,%esi
40c9ed:	e8 e5 02 00 00       	call   0x40ccd7
40c9f2:	83 f8 07             	cmp    $0x7,%eax
40c9f5:	75 14                	jne    0x40ca0b
40c9f7:	39 77 10             	cmp    %esi,0x10(%edi)
40c9fa:	75 0f                	jne    0x40ca0b
40c9fc:	6a 30                	push   $0x30
40c9fe:	51                   	push   %ecx
40c9ff:	8b 4f 04             	mov    0x4(%edi),%ecx
40ca02:	6a 33                	push   $0x33
40ca04:	5a                   	pop    %edx
40ca05:	e8 e1 33 00 00       	call   0x40fdeb
40ca0a:	46                   	inc    %esi
40ca0b:	5f                   	pop    %edi
40ca0c:	8b c6                	mov    %esi,%eax
40ca0e:	5e                   	pop    %esi
40ca0f:	c2 04 00             	ret    $0x4
40ca12:	cc                   	int3
40ca13:	cc                   	int3
40ca14:	cc                   	int3
40ca15:	cc                   	int3
40ca16:	cc                   	int3
40ca17:	cc                   	int3
40ca18:	cc                   	int3
40ca19:	cc                   	int3
40ca1a:	cc                   	int3
40ca1b:	cc                   	int3
40ca1c:	cc                   	int3
40ca1d:	cc                   	int3
40ca1e:	cc                   	int3
40ca1f:	cc                   	int3
40ca20:	8b ff                	mov    %edi,%edi
40ca22:	55                   	push   %ebp
40ca23:	8b ec                	mov    %esp,%ebp
40ca25:	81 ec 08 06 00 00    	sub    $0x608,%esp
40ca2b:	a1 18 51 41 00       	mov    0x415118,%eax
40ca30:	33 c5                	xor    %ebp,%eax
40ca32:	89 45 fc             	mov    %eax,-0x4(%ebp)
40ca35:	56                   	push   %esi
40ca36:	57                   	push   %edi
40ca37:	68 eb 03 00 00       	push   $0x3eb
40ca3c:	8b f9                	mov    %ecx,%edi
40ca3e:	e8 94 02 00 00       	call   0x40ccd7
40ca43:	8b f0                	mov    %eax,%esi
40ca45:	83 fe 03             	cmp    $0x3,%esi
40ca48:	76 20                	jbe    0x40ca6a
40ca4a:	83 fe 06             	cmp    $0x6,%esi
40ca4d:	76 13                	jbe    0x40ca62
40ca4f:	83 fe 07             	cmp    $0x7,%esi
40ca52:	75 07                	jne    0x40ca5b
40ca54:	be 14 00 02 00       	mov    $0x20014,%esi
40ca59:	eb 15                	jmp    0x40ca70
40ca5b:	be 10 00 02 00       	mov    $0x20010,%esi
40ca60:	eb 0e                	jmp    0x40ca70
40ca62:	81 c6 1e 00 10 00    	add    $0x10001e,%esi
40ca68:	eb 06                	jmp    0x40ca70
40ca6a:	81 c6 10 00 02 00    	add    $0x20010,%esi
40ca70:	56                   	push   %esi
40ca71:	68 4c 01 00 00       	push   $0x14c
40ca76:	e8 80 63 00 00       	call   0x412dfb
40ca7b:	81 fe 22 00 10 00    	cmp    $0x100022,%esi
40ca81:	74 28                	je     0x40caab
40ca83:	81 fe 23 00 10 00    	cmp    $0x100023,%esi
40ca89:	74 20                	je     0x40caab
40ca8b:	81 fe 24 00 10 00    	cmp    $0x100024,%esi
40ca91:	74 18                	je     0x40caab
40ca93:	81 fe 14 00 02 00    	cmp    $0x20014,%esi
40ca99:	74 10                	je     0x40caab
40ca9b:	81 fe 31 00 00 04    	cmp    $0x4000031,%esi
40caa1:	74 08                	je     0x40caab
40caa3:	81 fe 30 00 01 00    	cmp    $0x10030,%esi
40caa9:	75 0c                	jne    0x40cab7
40caab:	6a 00                	push   $0x0
40caad:	68 08 01 00 00       	push   $0x108
40cab2:	e8 44 63 00 00       	call   0x412dfb
40cab7:	83 7f 10 00          	cmpl   $0x0,0x10(%edi)
40cabb:	74 1c                	je     0x40cad9
40cabd:	83 7f 0c 00          	cmpl   $0x0,0xc(%edi)
40cac1:	74 16                	je     0x40cad9
40cac3:	8d 8d f8 f9 ff ff    	lea    -0x608(%ebp),%ecx
40cac9:	e8 3c 28 00 00       	call   0x40f30a
40cace:	8d 8d f8 f9 ff ff    	lea    -0x608(%ebp),%ecx
40cad4:	e8 88 b6 ff ff       	call   0x408161
40cad9:	8b 4d fc             	mov    -0x4(%ebp),%ecx
40cadc:	33 c0                	xor    %eax,%eax
40cade:	5f                   	pop    %edi
40cadf:	33 cd                	xor    %ebp,%ecx
40cae1:	5e                   	pop    %esi
40cae2:	e8 f9 6d 00 00       	call   0x4138e0
40cae7:	c9                   	leave
40cae8:	c2 04 00             	ret    $0x4
40caeb:	8b ff                	mov    %edi,%edi
40caed:	55                   	push   %ebp
40caee:	8b ec                	mov    %esp,%ebp
40caf0:	51                   	push   %ecx
40caf1:	51                   	push   %ecx
40caf2:	53                   	push   %ebx
40caf3:	56                   	push   %esi
40caf4:	8b f1                	mov    %ecx,%esi
40caf6:	6a 20                	push   $0x20
40caf8:	89 75 fc             	mov    %esi,-0x4(%ebp)
40cafb:	e8 97 68 00 00       	call   0x413397
40cb00:	8b d8                	mov    %eax,%ebx
40cb02:	89 5d f8             	mov    %ebx,-0x8(%ebp)
40cb05:	59                   	pop    %ecx
40cb06:	85 db                	test   %ebx,%ebx
40cb08:	74 2f                	je     0x40cb39
40cb0a:	8b 46 10             	mov    0x10(%esi),%eax
40cb0d:	33 d2                	xor    %edx,%edx
40cb0f:	33 c9                	xor    %ecx,%ecx
40cb11:	89 53 04             	mov    %edx,0x4(%ebx)
40cb14:	66 89 4b 08          	mov    %cx,0x8(%ebx)
40cb18:	c7 03 00 16 40 00    	movl   $0x401600,(%ebx)
40cb1e:	89 43 10             	mov    %eax,0x10(%ebx)
40cb21:	89 53 14             	mov    %edx,0x14(%ebx)
40cb24:	89 53 1c             	mov    %edx,0x1c(%ebx)
40cb27:	89 53 18             	mov    %edx,0x18(%ebx)
40cb2a:	89 53 0c             	mov    %edx,0xc(%ebx)
40cb2d:	c7 05 0c 98 41 00 01 	movl   $0x1,0x41980c
40cb34:	00 00 00
40cb37:	eb 02                	jmp    0x40cb3b
40cb39:	33 db                	xor    %ebx,%ebx
40cb3b:	85 db                	test   %ebx,%ebx
40cb3d:	74 3b                	je     0x40cb7a
40cb3f:	8b 4e 04             	mov    0x4(%esi),%ecx
40cb42:	ba cf 00 00 00       	mov    $0xcf,%edx
40cb47:	57                   	push   %edi
40cb48:	53                   	push   %ebx
40cb49:	e8 37 30 00 00       	call   0x40fb85
40cb4e:	8b 13                	mov    (%ebx),%edx
40cb50:	8b f8                	mov    %eax,%edi
40cb52:	6a 01                	push   $0x1
40cb54:	8b 32                	mov    (%edx),%esi
40cb56:	8b ce                	mov    %esi,%ecx
40cb58:	ff 15 90 b3 41 00    	call   *0x41b390
40cb5e:	8b cb                	mov    %ebx,%ecx
40cb60:	ff d6                	call   *%esi
40cb62:	33 db                	xor    %ebx,%ebx
40cb64:	43                   	inc    %ebx
40cb65:	3b fb                	cmp    %ebx,%edi
40cb67:	5f                   	pop    %edi
40cb68:	75 10                	jne    0x40cb7a
40cb6a:	8b 75 fc             	mov    -0x4(%ebp),%esi
40cb6d:	6a 05                	push   $0x5
40cb6f:	8b 4e 0c             	mov    0xc(%esi),%ecx
40cb72:	e8 68 24 00 00       	call   0x40efdf
40cb77:	89 5e 10             	mov    %ebx,0x10(%esi)
40cb7a:	5e                   	pop    %esi
40cb7b:	5b                   	pop    %ebx
40cb7c:	c9                   	leave
40cb7d:	c3                   	ret
40cb7e:	cc                   	int3
40cb7f:	cc                   	int3
40cb80:	8b ff                	mov    %edi,%edi
40cb82:	55                   	push   %ebp
40cb83:	8b ec                	mov    %esp,%ebp
40cb85:	8b 45 08             	mov    0x8(%ebp),%eax
40cb88:	56                   	push   %esi
40cb89:	57                   	push   %edi
40cb8a:	8b f9                	mov    %ecx,%edi
40cb8c:	33 c9                	xor    %ecx,%ecx
40cb8e:	83 f8 50             	cmp    $0x50,%eax
40cb91:	77 79                	ja     0x40cc0c
40cb93:	74 70                	je     0x40cc05
40cb95:	83 e8 10             	sub    $0x10,%eax
40cb98:	74 58                	je     0x40cbf2
40cb9a:	83 e8 1b             	sub    $0x1b,%eax
40cb9d:	74 38                	je     0x40cbd7
40cb9f:	83 e8 01             	sub    $0x1,%eax
40cba2:	74 2c                	je     0x40cbd0
40cba4:	48                   	dec    %eax
40cba5:	83 e8 01             	sub    $0x1,%eax
40cba8:	74 1f                	je     0x40cbc9
40cbaa:	83 e8 20             	sub    $0x20,%eax
40cbad:	0f 85 b1 00 00 00    	jne    0x40cc64
40cbb3:	8b 07                	mov    (%edi),%eax
40cbb5:	ff 75 10             	push   0x10(%ebp)
40cbb8:	8b 70 14             	mov    0x14(%eax),%esi
40cbbb:	8b ce                	mov    %esi,%ecx
40cbbd:	ff 15 90 b3 41 00    	call   *0x41b390
40cbc3:	8b cf                	mov    %edi,%ecx
40cbc5:	ff d6                	call   *%esi
40cbc7:	eb 25                	jmp    0x40cbee
40cbc9:	8b 07                	mov    (%edi),%eax
40cbcb:	8b 70 28             	mov    0x28(%eax),%esi
40cbce:	eb 0c                	jmp    0x40cbdc
40cbd0:	8b 07                	mov    (%edi),%eax
40cbd2:	8b 70 1c             	mov    0x1c(%eax),%esi
40cbd5:	eb 05                	jmp    0x40cbdc
40cbd7:	8b 07                	mov    (%edi),%eax
40cbd9:	8b 70 18             	mov    0x18(%eax),%esi
40cbdc:	ff 75 10             	push   0x10(%ebp)
40cbdf:	8b ce                	mov    %esi,%ecx
40cbe1:	ff 75 0c             	push   0xc(%ebp)
40cbe4:	ff 15 90 b3 41 00    	call   *0x41b390
40cbea:	8b cf                	mov    %edi,%ecx
40cbec:	ff d6                	call   *%esi
40cbee:	8b c8                	mov    %eax,%ecx
40cbf0:	eb 72                	jmp    0x40cc64
40cbf2:	8b 07                	mov    (%edi),%eax
40cbf4:	8b 70 10             	mov    0x10(%eax),%esi
40cbf7:	8b ce                	mov    %esi,%ecx
40cbf9:	ff 15 90 b3 41 00    	call   *0x41b390
40cbff:	8b cf                	mov    %edi,%ecx
40cc01:	ff d6                	call   *%esi
40cc03:	eb e9                	jmp    0x40cbee
40cc05:	8b 07                	mov    (%edi),%eax
40cc07:	8b 70 24             	mov    0x24(%eax),%esi
40cc0a:	eb d0                	jmp    0x40cbdc
40cc0c:	2d 10 01 00 00       	sub    $0x110,%eax
40cc11:	74 3a                	je     0x40cc4d
40cc13:	83 e8 01             	sub    $0x1,%eax
40cc16:	74 2e                	je     0x40cc46
40cc18:	48                   	dec    %eax
40cc19:	83 e8 01             	sub    $0x1,%eax
40cc1c:	74 1b                	je     0x40cc39
40cc1e:	2d ed 00 00 00       	sub    $0xed,%eax
40cc23:	74 0d                	je     0x40cc32
40cc25:	48                   	dec    %eax
40cc26:	83 e8 01             	sub    $0x1,%eax
40cc29:	75 39                	jne    0x40cc64
40cc2b:	8b 07                	mov    (%edi),%eax
40cc2d:	8b 70 34             	mov    0x34(%eax),%esi
40cc30:	eb aa                	jmp    0x40cbdc
40cc32:	8b 07                	mov    (%edi),%eax
40cc34:	8b 70 30             	mov    0x30(%eax),%esi
40cc37:	eb a3                	jmp    0x40cbdc
40cc39:	8b 07                	mov    (%edi),%eax
40cc3b:	ff 75 0c             	push   0xc(%ebp)
40cc3e:	8b 70 2c             	mov    0x2c(%eax),%esi
40cc41:	e9 75 ff ff ff       	jmp    0x40cbbb
40cc46:	8b 07                	mov    (%edi),%eax
40cc48:	8b 70 0c             	mov    0xc(%eax),%esi
40cc4b:	eb 8f                	jmp    0x40cbdc
40cc4d:	8b 07                	mov    (%edi),%eax
40cc4f:	ff 75 10             	push   0x10(%ebp)
40cc52:	8b 70 08             	mov    0x8(%eax),%esi
40cc55:	8b ce                	mov    %esi,%ecx
40cc57:	ff 15 90 b3 41 00    	call   *0x41b390
40cc5d:	8b cf                	mov    %edi,%ecx
40cc5f:	ff d6                	call   *%esi
40cc61:	33 c9                	xor    %ecx,%ecx
40cc63:	41                   	inc    %ecx
40cc64:	5f                   	pop    %edi
40cc65:	8b c1                	mov    %ecx,%eax
40cc67:	5e                   	pop    %esi
40cc68:	5d                   	pop    %ebp
40cc69:	c2 0c 00             	ret    $0xc
40cc6c:	8b ff                	mov    %edi,%edi
40cc6e:	55                   	push   %ebp
40cc6f:	8b ec                	mov    %esp,%ebp
40cc71:	ff 75 0c             	push   0xc(%ebp)
40cc74:	ff 75 08             	push   0x8(%ebp)
40cc77:	ff 71 04             	push   0x4(%ecx)
40cc7a:	ff 15 d0 b1 41 00    	call   *0x41b1d0
40cc80:	50                   	push   %eax
40cc81:	ff 15 dc b1 41 00    	call   *0x41b1dc
40cc87:	5d                   	pop    %ebp
40cc88:	c2 08 00             	ret    $0x8
40cc8b:	8b ff                	mov    %edi,%edi
40cc8d:	55                   	push   %ebp
40cc8e:	8b ec                	mov    %esp,%ebp
40cc90:	ff 75 0c             	push   0xc(%ebp)
40cc93:	6a 00                	push   $0x0
40cc95:	68 43 01 00 00       	push   $0x143
40cc9a:	ff 75 08             	push   0x8(%ebp)
40cc9d:	ff 71 04             	push   0x4(%ecx)
40cca0:	ff 15 d0 b1 41 00    	call   *0x41b1d0
40cca6:	50                   	push   %eax
40cca7:	ff 15 d8 b1 41 00    	call   *0x41b1d8
40ccad:	5d                   	pop    %ebp
40ccae:	c2 08 00             	ret    $0x8
40ccb1:	8b ff                	mov    %edi,%edi
40ccb3:	55                   	push   %ebp
40ccb4:	8b ec                	mov    %esp,%ebp
40ccb6:	6a 00                	push   $0x0
40ccb8:	ff 75 0c             	push   0xc(%ebp)
40ccbb:	68 4e 01 00 00       	push   $0x14e
40ccc0:	ff 75 08             	push   0x8(%ebp)
40ccc3:	ff 71 04             	push   0x4(%ecx)
40ccc6:	ff 15 d0 b1 41 00    	call   *0x41b1d0
40cccc:	50                   	push   %eax
40cccd:	ff 15 d8 b1 41 00    	call   *0x41b1d8
40ccd3:	5d                   	pop    %ebp
40ccd4:	c2 08 00             	ret    $0x8
40ccd7:	8b ff                	mov    %edi,%edi
40ccd9:	55                   	push   %ebp
40ccda:	8b ec                	mov    %esp,%ebp
40ccdc:	6a 00                	push   $0x0
40ccde:	6a 00                	push   $0x0
40cce0:	68 47 01 00 00       	push   $0x147
40cce5:	ff 75 08             	push   0x8(%ebp)
40cce8:	ff 71 04             	push   0x4(%ecx)
40cceb:	ff 15 d0 b1 41 00    	call   *0x41b1d0
40ccf1:	50                   	push   %eax