40bac6:	8b 5d 14             	mov    0x14(%ebp),%ebx
40bac9:	56                   	push   %esi
40baca:	89 08                	mov    %ecx,(%eax)
40bacc:	8b 45 18             	mov    0x18(%ebp),%eax
40bacf:	57                   	push   %edi
40bad0:	89 4d f8             	mov    %ecx,-0x8(%ebp)
40bad3:	8b f9                	mov    %ecx,%edi
40bad5:	89 4d d8             	mov    %ecx,-0x28(%ebp)
40bad8:	89 08                	mov    %ecx,(%eax)
40bada:	8d 45 f8             	lea    -0x8(%ebp),%eax
40badd:	50                   	push   %eax
40bade:	6a 01                	push   $0x1
40bae0:	51                   	push   %ecx
40bae1:	68 f8 39 40 00       	push   $0x4039f8
40bae6:	68 02 00 00 80       	push   $0x80000002
40baeb:	89 4d f4             	mov    %ecx,-0xc(%ebp)
40baee:	c7 45 dc 14 00 00 00 	movl   $0x14,-0x24(%ebp)
40baf5:	89 4d e4             	mov    %ecx,-0x1c(%ebp)
40baf8:	89 4d e8             	mov    %ecx,-0x18(%ebp)
40bafb:	89 4d fc             	mov    %ecx,-0x4(%ebp)
40bafe:	89 4d f0             	mov    %ecx,-0x10(%ebp)
40bb01:	89 4d ec             	mov    %ecx,-0x14(%ebp)
40bb04:	89 4d e0             	mov    %ecx,-0x20(%ebp)
40bb07:	89 0b                	mov    %ecx,(%ebx)
40bb09:	ff 15 04 60 41 00    	call   *0x416004
40bb0f:	8b f0                	mov    %eax,%esi
40bb11:	85 f6                	test   %esi,%esi
40bb13:	74 10                	je     0x40bb25
40bb15:	57                   	push   %edi
40bb16:	68 28 35 40 00       	push   $0x403528
40bb1b:	68 88 00 00 00       	push   $0x88
40bb20:	e9 5f 02 00 00       	jmp    0x40bd84
40bb25:	8d 45 f4             	lea    -0xc(%ebp),%eax
40bb28:	50                   	push   %eax
40bb29:	6a 00                	push   $0x0
40bb2b:	8d 45 d8             	lea    -0x28(%ebp),%eax
40bb2e:	50                   	push   %eax
40bb2f:	6a 00                	push   $0x0
40bb31:	68 28 3a 40 00       	push   $0x403a28
40bb36:	ff 75 f8             	push   -0x8(%ebp)
40bb39:	ff 15 1c 60 41 00    	call   *0x41601c
40bb3f:	8b f0                	mov    %eax,%esi
40bb41:	85 f6                	test   %esi,%esi
40bb43:	74 11                	je     0x40bb56
40bb45:	6a 00                	push   $0x0
40bb47:	68 28 35 40 00       	push   $0x403528
40bb4c:	68 94 00 00 00       	push   $0x94
40bb51:	e9 2e 02 00 00       	jmp    0x40bd84
40bb56:	ff 75 f4             	push   -0xc(%ebp)
40bb59:	6a 00                	push   $0x0
40bb5b:	ff 15 e0 60 41 00    	call   *0x4160e0
40bb61:	50                   	push   %eax
40bb62:	ff 15 dc 60 41 00    	call   *0x4160dc
40bb68:	8b f8                	mov    %eax,%edi
40bb6a:	85 ff                	test   %edi,%edi
40bb6c:	75 22                	jne    0x40bb90
40bb6e:	68 0e 00 07 80       	push   $0x8007000e
40bb73:	68 28 35 40 00       	push   $0x403528
40bb78:	68 9a 00 00 00       	push   $0x9a
40bb7d:	68 d0 34 40 00       	push   $0x4034d0
40bb82:	51                   	push   %ecx
40bb83:	e8 4a 54 00 00       	call   0x410fd2
40bb88:	6a 08                	push   $0x8
40bb8a:	5e                   	pop    %esi
40bb8b:	e9 35 02 00 00       	jmp    0x40bdc5
40bb90:	8d 45 f4             	lea    -0xc(%ebp),%eax
40bb93:	50                   	push   %eax
40bb94:	57                   	push   %edi
40bb95:	8d 45 d8             	lea    -0x28(%ebp),%eax
40bb98:	50                   	push   %eax
40bb99:	6a 00                	push   $0x0
40bb9b:	68 28 3a 40 00       	push   $0x403a28
40bba0:	ff 75 f8             	push   -0x8(%ebp)
40bba3:	ff 15 1c 60 41 00    	call   *0x41601c
40bba9:	8b f0                	mov    %eax,%esi
40bbab:	85 f6                	test   %esi,%esi
40bbad:	74 11                	je     0x40bbc0
40bbaf:	6a 00                	push   $0x0
40bbb1:	68 28 35 40 00       	push   $0x403528
40bbb6:	68 aa 00 00 00       	push   $0xaa
40bbbb:	e9 c4 01 00 00       	jmp    0x40bd84
40bbc0:	6a 0f                	push   $0xf
40bbc2:	ff 75 f4             	push   -0xc(%ebp)
40bbc5:	57                   	push   %edi
40bbc6:	ff 15 20 60 41 00    	call   *0x416020
40bbcc:	85 c0                	test   %eax,%eax
40bbce:	75 1a                	jne    0x40bbea
40bbd0:	50                   	push   %eax
40bbd1:	68 28 35 40 00       	push   $0x403528
40bbd6:	68 b4 00 00 00       	push   $0xb4
40bbdb:	68 d0 34 40 00       	push   $0x4034d0
40bbe0:	51                   	push   %ecx
40bbe1:	e8 ec 53 00 00       	call   0x410fd2
40bbe6:	6a 0b                	push   $0xb
40bbe8:	eb a0                	jmp    0x40bb8a
40bbea:	8d 45 e8             	lea    -0x18(%ebp),%eax
40bbed:	33 c9                	xor    %ecx,%ecx
40bbef:	50                   	push   %eax
40bbf0:	8b 45 18             	mov    0x18(%ebp),%eax
40bbf3:	ff 30                	push   (%eax)
40bbf5:	8d 45 e4             	lea    -0x1c(%ebp),%eax
40bbf8:	50                   	push   %eax
40bbf9:	ff 33                	push   (%ebx)
40bbfb:	8d 45 e0             	lea    -0x20(%ebp),%eax
40bbfe:	50                   	push   %eax
40bbff:	51                   	push   %ecx
40bc00:	8d 45 f0             	lea    -0x10(%ebp),%eax
40bc03:	50                   	push   %eax
40bc04:	51                   	push   %ecx
40bc05:	8d 45 dc             	lea    -0x24(%ebp),%eax
40bc08:	50                   	push   %eax
40bc09:	51                   	push   %ecx
40bc0a:	57                   	push   %edi
40bc0b:	ff 15 24 60 41 00    	call   *0x416024
40bc11:	85 c0                	test   %eax,%eax
40bc13:	75 24                	jne    0x40bc39
40bc15:	ff 15 68 61 41 00    	call   *0x416168
40bc1b:	83 f8 7a             	cmp    $0x7a,%eax
40bc1e:	74 19                	je     0x40bc39
40bc20:	ff 15 68 61 41 00    	call   *0x416168
40bc26:	6a 00                	push   $0x0
40bc28:	68 28 35 40 00       	push   $0x403528
40bc2d:	8b f0                	mov    %eax,%esi
40bc2f:	68 ca 00 00 00       	push   $0xca
40bc34:	e9 4b 01 00 00       	jmp    0x40bd84
40bc39:	ff 75 dc             	push   -0x24(%ebp)
40bc3c:	6a 00                	push   $0x0
40bc3e:	ff 15 e0 60 41 00    	call   *0x4160e0
40bc44:	50                   	push   %eax
40bc45:	ff 15 dc 60 41 00    	call   *0x4160dc
40bc4b:	8b 4d 10             	mov    0x10(%ebp),%ecx
40bc4e:	ff 75 f0             	push   -0x10(%ebp)
40bc51:	6a 00                	push   $0x0
40bc53:	89 01                	mov    %eax,(%ecx)
40bc55:	ff 15 e0 60 41 00    	call   *0x4160e0
40bc5b:	50                   	push   %eax
40bc5c:	ff 15 dc 60 41 00    	call   *0x4160dc
40bc62:	ff 75 e0             	push   -0x20(%ebp)
40bc65:	89 45 fc             	mov    %eax,-0x4(%ebp)
40bc68:	6a 00                	push   $0x0
40bc6a:	ff 15 e0 60 41 00    	call   *0x4160e0
40bc70:	50                   	push   %eax
40bc71:	ff 15 dc 60 41 00    	call   *0x4160dc
40bc77:	ff 75 e4             	push   -0x1c(%ebp)
40bc7a:	89 45 ec             	mov    %eax,-0x14(%ebp)
40bc7d:	6a 00                	push   $0x0
40bc7f:	ff 15 e0 60 41 00    	call   *0x4160e0
40bc85:	50                   	push   %eax
40bc86:	ff 15 dc 60 41 00    	call   *0x4160dc
40bc8c:	ff 75 e8             	push   -0x18(%ebp)
40bc8f:	89 03                	mov    %eax,(%ebx)
40bc91:	6a 00                	push   $0x0
40bc93:	ff 15 e0 60 41 00    	call   *0x4160e0
40bc99:	50                   	push   %eax
40bc9a:	ff 15 dc 60 41 00    	call   *0x4160dc
40bca0:	83 7d fc 00          	cmpl   $0x0,-0x4(%ebp)
40bca4:	8b c8                	mov    %eax,%ecx
40bca6:	8b 45 18             	mov    0x18(%ebp),%eax
40bca9:	89 08                	mov    %ecx,(%eax)
40bcab:	0f 84 c1 00 00 00    	je     0x40bd72
40bcb1:	83 7d ec 00          	cmpl   $0x0,-0x14(%ebp)
40bcb5:	0f 84 b7 00 00 00    	je     0x40bd72
40bcbb:	83 3b 00             	cmpl   $0x0,(%ebx)
40bcbe:	0f 84 ae 00 00 00    	je     0x40bd72
40bcc4:	85 c9                	test   %ecx,%ecx
40bcc6:	0f 84 a6 00 00 00    	je     0x40bd72
40bccc:	8b 45 10             	mov    0x10(%ebp),%eax
40bccf:	83 38 00             	cmpl   $0x0,(%eax)
40bcd2:	0f 84 9a 00 00 00    	je     0x40bd72
40bcd8:	6a 01                	push   $0x1
40bcda:	ff 30                	push   (%eax)
40bcdc:	ff 15 28 60 41 00    	call   *0x416028
40bce2:	85 c0                	test   %eax,%eax
40bce4:	75 19                	jne    0x40bcff
40bce6:	ff 15 68 61 41 00    	call   *0x416168
40bcec:	6a 00                	push   $0x0
40bcee:	68 28 35 40 00       	push   $0x403528
40bcf3:	8b f0                	mov    %eax,%esi
40bcf5:	68 e0 00 00 00       	push   $0xe0
40bcfa:	e9 85 00 00 00       	jmp    0x40bd84
40bcff:	6a 02                	push   $0x2
40bd01:	ff 75 f0             	push   -0x10(%ebp)
40bd04:	ff 75 fc             	push   -0x4(%ebp)
40bd07:	ff 15 2c 60 41 00    	call   *0x41602c
40bd0d:	85 c0                	test   %eax,%eax
40bd0f:	75 16                	jne    0x40bd27
40bd11:	ff 15 68 61 41 00    	call   *0x416168
40bd17:	6a 00                	push   $0x0
40bd19:	68 28 35 40 00       	push   $0x403528
40bd1e:	8b f0                	mov    %eax,%esi
40bd20:	68 ea 00 00 00       	push   $0xea
40bd25:	eb 5d                	jmp    0x40bd84
40bd27:	8d 45 e8             	lea    -0x18(%ebp),%eax
40bd2a:	50                   	push   %eax
40bd2b:	8b 45 18             	mov    0x18(%ebp),%eax
40bd2e:	ff 30                	push   (%eax)
40bd30:	8d 45 e4             	lea    -0x1c(%ebp),%eax
40bd33:	50                   	push   %eax
40bd34:	ff 33                	push   (%ebx)
40bd36:	8d 45 e0             	lea    -0x20(%ebp),%eax
40bd39:	50                   	push   %eax
40bd3a:	ff 75 ec             	push   -0x14(%ebp)
40bd3d:	8d 45 f0             	lea    -0x10(%ebp),%eax
40bd40:	50                   	push   %eax
40bd41:	ff 75 fc             	push   -0x4(%ebp)
40bd44:	8d 45 dc             	lea    -0x24(%ebp),%eax
40bd47:	50                   	push   %eax
40bd48:	8b 45 10             	mov    0x10(%ebp),%eax
40bd4b:	ff 30                	push   (%eax)
40bd4d:	57                   	push   %edi
40bd4e:	ff 15 24 60 41 00    	call   *0x416024
40bd54:	85 c0                	test   %eax,%eax
40bd56:	0f 85 bd 00 00 00    	jne    0x40be19
40bd5c:	ff 15 68 61 41 00    	call   *0x416168
40bd62:	6a 00                	push   $0x0
40bd64:	68 28 35 40 00       	push   $0x403528
40bd69:	8b f0                	mov    %eax,%esi
40bd6b:	68 00 01 00 00       	push   $0x100
40bd70:	eb 12                	jmp    0x40bd84
40bd72:	6a 08                	push   $0x8
40bd74:	5e                   	pop    %esi
40bd75:	68 0e 00 07 80       	push   $0x8007000e
40bd7a:	68 28 35 40 00       	push   $0x403528
40bd7f:	68 da 00 00 00       	push   $0xda
40bd84:	68 d0 34 40 00       	push   $0x4034d0
40bd89:	51                   	push   %ecx
40bd8a:	e8 43 52 00 00       	call   0x410fd2
40bd8f:	85 f6                	test   %esi,%esi
40bd91:	0f 84 82 00 00 00    	je     0x40be19
40bd97:	8b 45 fc             	mov    -0x4(%ebp),%eax
40bd9a:	85 c0                	test   %eax,%eax
40bd9c:	74 10                	je     0x40bdae
40bd9e:	50                   	push   %eax
40bd9f:	6a 00                	push   $0x0
40bda1:	ff 15 e0 60 41 00    	call   *0x4160e0
40bda7:	50                   	push   %eax
40bda8:	ff 15 e4 60 41 00    	call   *0x4160e4
40bdae:	8b 45 ec             	mov    -0x14(%ebp),%eax
40bdb1:	85 c0                	test   %eax,%eax
40bdb3:	74 10                	je     0x40bdc5
40bdb5:	50                   	push   %eax
40bdb6:	6a 00                	push   $0x0
40bdb8:	ff 15 e0 60 41 00    	call   *0x4160e0
40bdbe:	50                   	push   %eax
40bdbf:	ff 15 e4 60 41 00    	call   *0x4160e4
40bdc5:	8b 45 10             	mov    0x10(%ebp),%eax
40bdc8:	83 38 00             	cmpl   $0x0,(%eax)
40bdcb:	74 17                	je     0x40bde4
40bdcd:	ff 30                	push   (%eax)
40bdcf:	6a 00                	push   $0x0
40bdd1:	ff 15 e0 60 41 00    	call   *0x4160e0
40bdd7:	50                   	push   %eax
40bdd8:	ff 15 e4 60 41 00    	call   *0x4160e4
40bdde:	8b 45 10             	mov    0x10(%ebp),%eax
40bde1:	83 20 00             	andl   $0x0,(%eax)
40bde4:	83 3b 00             	cmpl   $0x0,(%ebx)
40bde7:	74 14                	je     0x40bdfd
40bde9:	ff 33                	push   (%ebx)
40bdeb:	6a 00                	push   $0x0
40bded:	ff 15 e0 60 41 00    	call   *0x4160e0
40bdf3:	50                   	push   %eax
40bdf4:	ff 15 e4 60 41 00    	call   *0x4160e4
40bdfa:	83 23 00             	andl   $0x0,(%ebx)
40bdfd:	8b 5d 18             	mov    0x18(%ebp),%ebx
40be00:	83 3b 00             	cmpl   $0x0,(%ebx)
40be03:	74 14                	je     0x40be19
40be05:	ff 33                	push   (%ebx)
40be07:	6a 00                	push   $0x0
40be09:	ff 15 e0 60 41 00    	call   *0x4160e0
40be0f:	50                   	push   %eax
40be10:	ff 15 e4 60 41 00    	call   *0x4160e4
40be16:	83 23 00             	andl   $0x0,(%ebx)
40be19:	85 ff                	test   %edi,%edi
40be1b:	74 10                	je     0x40be2d
40be1d:	57                   	push   %edi
40be1e:	6a 00                	push   $0x0
40be20:	ff 15 e0 60 41 00    	call   *0x4160e0
40be26:	50                   	push   %eax
40be27:	ff 15 e4 60 41 00    	call   *0x4160e4
40be2d:	83 7d f8 00          	cmpl   $0x0,-0x8(%ebp)
40be31:	74 09                	je     0x40be3c
40be33:	ff 75 f8             	push   -0x8(%ebp)
40be36:	ff 15 18 60 41 00    	call   *0x416018
40be3c:	5f                   	pop    %edi
40be3d:	8b c6                	mov    %esi,%eax
40be3f:	5e                   	pop    %esi
40be40:	5b                   	pop    %ebx
40be41:	c9                   	leave
40be42:	c2 14 00             	ret    $0x14
40be45:	8b ff                	mov    %edi,%edi
40be47:	55                   	push   %ebp
40be48:	8b ec                	mov    %esp,%ebp
40be4a:	83 ec 10             	sub    $0x10,%esp
40be4d:	53                   	push   %ebx
40be4e:	56                   	push   %esi
40be4f:	57                   	push   %edi
40be50:	33 db                	xor    %ebx,%ebx
40be52:	8d 45 f8             	lea    -0x8(%ebp),%eax
40be55:	50                   	push   %eax
40be56:	53                   	push   %ebx
40be57:	ff 75 10             	push   0x10(%ebp)
40be5a:	89 5d f8             	mov    %ebx,-0x8(%ebp)
40be5d:	8b fb                	mov    %ebx,%edi
40be5f:	89 5d f4             	mov    %ebx,-0xc(%ebp)
40be62:	89 5d fc             	mov    %ebx,-0x4(%ebp)
40be65:	ff 15 30 60 41 00    	call   *0x416030
40be6b:	85 c0                	test   %eax,%eax
40be6d:	75 23                	jne    0x40be92
40be6f:	ff 15 68 61 41 00    	call   *0x416168
40be75:	83 f8 7a             	cmp    $0x7a,%eax
40be78:	74 18                	je     0x40be92
40be7a:	ff 15 68 61 41 00    	call   *0x416168
40be80:	53                   	push   %ebx
40be81:	68 70 35 40 00       	push   $0x403570
40be86:	8b f0                	mov    %eax,%esi
40be88:	68 2e 01 00 00       	push   $0x12e
40be8d:	e9 cb 00 00 00       	jmp    0x40bf5d
40be92:	ff 75 f8             	push   -0x8(%ebp)
40be95:	53                   	push   %ebx
40be96:	ff 15 e0 60 41 00    	call   *0x4160e0
40be9c:	50                   	push   %eax
40be9d:	ff 15 dc 60 41 00    	call   *0x4160dc
40bea3:	8b f8                	mov    %eax,%edi
40bea5:	85 ff                	test   %edi,%edi
40bea7:	75 17                	jne    0x40bec0
40bea9:	6a 08                	push   $0x8
40beab:	5e                   	pop    %esi
40beac:	68 0e 00 07 80       	push   $0x8007000e
40beb1:	68 70 35 40 00       	push   $0x403570
40beb6:	68 38 01 00 00       	push   $0x138
40bebb:	e9 9d 00 00 00       	jmp    0x40bf5d
40bec0:	8d 45 f8             	lea    -0x8(%ebp),%eax
40bec3:	50                   	push   %eax
40bec4:	57                   	push   %edi
40bec5:	ff 75 10             	push   0x10(%ebp)
40bec8:	ff 15 30 60 41 00    	call   *0x416030
40bece:	85 c0                	test   %eax,%eax
40bed0:	75 15                	jne    0x40bee7
40bed2:	ff 15 68 61 41 00    	call   *0x416168
40bed8:	53                   	push   %ebx
40bed9:	68 70 35 40 00       	push   $0x403570
40bede:	8b f0                	mov    %eax,%esi
40bee0:	68 42 01 00 00       	push   $0x142
40bee5:	eb 76                	jmp    0x40bf5d
40bee7:	ff 75 10             	push   0x10(%ebp)
40beea:	ff 15 34 60 41 00    	call   *0x416034
40bef0:	85 c0                	test   %eax,%eax
40bef2:	75 12                	jne    0x40bf06
40bef4:	53                   	push   %ebx
40bef5:	68 70 35 40 00       	push   $0x403570