40d9f0:	50                   	push   %eax
40d9f1:	a5                   	movsl  %ds:(%esi),%es:(%edi)
40d9f2:	a5                   	movsl  %ds:(%esi),%es:(%edi)
40d9f3:	a5                   	movsl  %ds:(%esi),%es:(%edi)
40d9f4:	66 a5                	movsw  %ds:(%esi),%es:(%edi)
40d9f6:	e8 c9 19 00 00       	call   0x40f3c4
40d9fb:	c7 85 8c fd ff ff 04 	movl   $0x4,-0x274(%ebp)
40da02:	00 00 00
40da05:	8d bd 90 fd ff ff    	lea    -0x270(%ebp),%edi
40da0b:	be d8 19 40 00       	mov    $0x4019d8,%esi
40da10:	8d 85 9e fd ff ff    	lea    -0x262(%ebp),%eax
40da16:	68 bc 00 00 00       	push   $0xbc
40da1b:	6a 00                	push   $0x0
40da1d:	50                   	push   %eax
40da1e:	a5                   	movsl  %ds:(%esi),%es:(%edi)
40da1f:	a5                   	movsl  %ds:(%esi),%es:(%edi)
40da20:	a5                   	movsl  %ds:(%esi),%es:(%edi)
40da21:	66 a5                	movsw  %ds:(%esi),%es:(%edi)
40da23:	e8 9c 19 00 00       	call   0x40f3c4
40da28:	c7 85 5c fe ff ff 0a 	movl   $0xa,-0x1a4(%ebp)
40da2f:	00 00 00
40da32:	8d bd 60 fe ff ff    	lea    -0x1a0(%ebp),%edi
40da38:	be e8 19 40 00       	mov    $0x4019e8,%esi
40da3d:	8d 85 70 fe ff ff    	lea    -0x190(%ebp),%eax
40da43:	68 ba 00 00 00       	push   $0xba
40da48:	6a 00                	push   $0x0
40da4a:	50                   	push   %eax
40da4b:	a5                   	movsl  %ds:(%esi),%es:(%edi)
40da4c:	a5                   	movsl  %ds:(%esi),%es:(%edi)
40da4d:	a5                   	movsl  %ds:(%esi),%es:(%edi)
40da4e:	a5                   	movsl  %ds:(%esi),%es:(%edi)
40da4f:	e8 70 19 00 00       	call   0x40f3c4
40da54:	c7 85 2c ff ff ff 06 	movl   $0x6,-0xd4(%ebp)
40da5b:	00 00 00
40da5e:	8d bd 30 ff ff ff    	lea    -0xd0(%ebp),%edi
40da64:	be f8 19 40 00       	mov    $0x4019f8,%esi
40da69:	8d 85 40 ff ff ff    	lea    -0xc0(%ebp),%eax
40da6f:	68 ba 00 00 00       	push   $0xba
40da74:	6a 00                	push   $0x0
40da76:	50                   	push   %eax
40da77:	a5                   	movsl  %ds:(%esi),%es:(%edi)
40da78:	a5                   	movsl  %ds:(%esi),%es:(%edi)
40da79:	a5                   	movsl  %ds:(%esi),%es:(%edi)
40da7a:	a5                   	movsl  %ds:(%esi),%es:(%edi)
40da7b:	e8 44 19 00 00       	call   0x40f3c4
40da80:	83 c4 48             	add    $0x48,%esp
40da83:	85 db                	test   %ebx,%ebx
40da85:	75 21                	jne    0x40daa8
40da87:	6a 57                	push   $0x57
40da89:	ff 15 74 20 41 00    	call   *0x412074
40da8f:	e8 60 bd ff ff       	call   0x4097f4
40da94:	b8 08 1a 40 00       	mov    $0x401a08,%eax
40da99:	8b 4d fc             	mov    -0x4(%ebp),%ecx
40da9c:	5f                   	pop    %edi
40da9d:	5e                   	pop    %esi
40da9e:	33 cd                	xor    %ebp,%ecx
40daa0:	5b                   	pop    %ebx
40daa1:	e8 2a 12 00 00       	call   0x40ecd0
40daa6:	c9                   	leave
40daa7:	c3                   	ret
40daa8:	53                   	push   %ebx
40daa9:	8d 95 1c fb ff ff    	lea    -0x4e4(%ebp),%edx
40daaf:	e8 11 ee ff ff       	call   0x40c8c5
40dab4:	6a 02                	push   $0x2
40dab6:	59                   	pop    %ecx
40dab7:	2b c1                	sub    %ecx,%eax
40dab9:	74 d9                	je     0x40da94
40dabb:	2b c1                	sub    %ecx,%eax
40dabd:	74 2f                	je     0x40daee
40dabf:	2b c1                	sub    %ecx,%eax
40dac1:	74 24                	je     0x40dae7
40dac3:	2b c1                	sub    %ecx,%eax
40dac5:	74 19                	je     0x40dae0
40dac7:	2b c1                	sub    %ecx,%eax
40dac9:	74 0e                	je     0x40dad9
40dacb:	2d f2 00 00 00       	sub    $0xf2,%eax
40dad0:	75 c2                	jne    0x40da94
40dad2:	b8 0c 1a 40 00       	mov    $0x401a0c,%eax
40dad7:	eb c0                	jmp    0x40da99
40dad9:	b8 24 1a 40 00       	mov    $0x401a24,%eax
40dade:	eb b9                	jmp    0x40da99
40dae0:	b8 18 1a 40 00       	mov    $0x401a18,%eax
40dae5:	eb b2                	jmp    0x40da99
40dae7:	b8 1c 1a 40 00       	mov    $0x401a1c,%eax
40daec:	eb ab                	jmp    0x40da99
40daee:	b8 14 1a 40 00       	mov    $0x401a14,%eax
40daf3:	eb a4                	jmp    0x40da99
40daf5:	8b ff                	mov    %edi,%edi
40daf7:	55                   	push   %ebp
40daf8:	8b ec                	mov    %esp,%ebp
40dafa:	83 ec 14             	sub    $0x14,%esp
40dafd:	53                   	push   %ebx
40dafe:	56                   	push   %esi
40daff:	57                   	push   %edi
40db00:	8b f1                	mov    %ecx,%esi
40db02:	8b da                	mov    %edx,%ebx
40db04:	6a 16                	push   $0x16
40db06:	59                   	pop    %ecx
40db07:	89 75 ec             	mov    %esi,-0x14(%ebp)
40db0a:	e8 48 ba ff ff       	call   0x409557
40db0f:	8b f8                	mov    %eax,%edi
40db11:	85 ff                	test   %edi,%edi
40db13:	0f 84 e9 00 00 00    	je     0x40dc02
40db19:	83 7d 08 00          	cmpl   $0x0,0x8(%ebp)
40db1d:	0f 84 df 00 00 00    	je     0x40dc02
40db23:	8b cf                	mov    %edi,%ecx
40db25:	e8 d0 d2 ff ff       	call   0x40adfa
40db2a:	d1 e8                	shr    $1,%eax
40db2c:	ba 30 12 40 00       	mov    $0x401230,%edx
40db31:	50                   	push   %eax
40db32:	8b cf                	mov    %edi,%ecx
40db34:	e8 bd c8 ff ff       	call   0x40a3f6
40db39:	8b ce                	mov    %esi,%ecx
40db3b:	e8 78 b2 ff ff       	call   0x408db8
40db40:	6a 01                	push   $0x1
40db42:	8d 73 05             	lea    0x5(%ebx),%esi
40db45:	89 45 f4             	mov    %eax,-0xc(%ebp)
40db48:	56                   	push   %esi
40db49:	6a 13                	push   $0x13
40db4b:	33 d2                	xor    %edx,%edx
40db4d:	59                   	pop    %ecx
40db4e:	e8 50 ba ff ff       	call   0x4095a3
40db53:	6a 01                	push   $0x1
40db55:	56                   	push   %esi
40db56:	6a 14                	push   $0x14
40db58:	33 d2                	xor    %edx,%edx
40db5a:	89 45 fc             	mov    %eax,-0x4(%ebp)
40db5d:	59                   	pop    %ecx
40db5e:	e8 40 ba ff ff       	call   0x4095a3
40db63:	83 7d fc 00          	cmpl   $0x0,-0x4(%ebp)
40db67:	89 45 f0             	mov    %eax,-0x10(%ebp)
40db6a:	0f 84 92 00 00 00    	je     0x40dc02
40db70:	85 c0                	test   %eax,%eax
40db72:	0f 84 8a 00 00 00    	je     0x40dc02
40db78:	33 f6                	xor    %esi,%esi
40db7a:	39 75 0c             	cmp    %esi,0xc(%ebp)
40db7d:	74 10                	je     0x40db8f
40db7f:	8b 4d 0c             	mov    0xc(%ebp),%ecx
40db82:	e8 36 c4 ff ff       	call   0x409fbd
40db87:	89 45 f8             	mov    %eax,-0x8(%ebp)
40db8a:	8b 45 f0             	mov    -0x10(%ebp),%eax
40db8d:	eb 03                	jmp    0x40db92
40db8f:	89 75 f8             	mov    %esi,-0x8(%ebp)
40db92:	39 75 f4             	cmp    %esi,-0xc(%ebp)
40db95:	76 6b                	jbe    0x40dc02
40db97:	8b 4d ec             	mov    -0x14(%ebp),%ecx
40db9a:	8b d6                	mov    %esi,%edx
40db9c:	53                   	push   %ebx
40db9d:	50                   	push   %eax
40db9e:	e8 7d b3 ff ff       	call   0x408f20
40dba3:	ff 75 f0             	push   -0x10(%ebp)
40dba6:	8b 4d fc             	mov    -0x4(%ebp),%ecx
40dba9:	ff 75 08             	push   0x8(%ebp)
40dbac:	e8 49 d2 ff ff       	call   0x40adfa
40dbb1:	d1 e8                	shr    $1,%eax
40dbb3:	48                   	dec    %eax
40dbb4:	50                   	push   %eax
40dbb5:	ff 75 fc             	push   -0x4(%ebp)
40dbb8:	e8 67 b8 ff ff       	call   0x409424
40dbbd:	83 c4 10             	add    $0x10,%esp
40dbc0:	8b cf                	mov    %edi,%ecx
40dbc2:	e8 33 d2 ff ff       	call   0x40adfa
40dbc7:	8b 55 fc             	mov    -0x4(%ebp),%edx
40dbca:	8b cf                	mov    %edi,%ecx
40dbcc:	d1 e8                	shr    $1,%eax
40dbce:	50                   	push   %eax
40dbcf:	e8 82 c8 ff ff       	call   0x40a456
40dbd4:	8b 45 f4             	mov    -0xc(%ebp),%eax
40dbd7:	46                   	inc    %esi
40dbd8:	3b f0                	cmp    %eax,%esi
40dbda:	73 21                	jae    0x40dbfd
40dbdc:	3b 5d f8             	cmp    -0x8(%ebp),%ebx
40dbdf:	72 21                	jb     0x40dc02
40dbe1:	8b cf                	mov    %edi,%ecx
40dbe3:	e8 12 d2 ff ff       	call   0x40adfa
40dbe8:	8b 55 0c             	mov    0xc(%ebp),%edx
40dbeb:	8b cf                	mov    %edi,%ecx
40dbed:	d1 e8                	shr    $1,%eax
40dbef:	50                   	push   %eax
40dbf0:	e8 61 c8 ff ff       	call   0x40a456
40dbf5:	2b 5d f8             	sub    -0x8(%ebp),%ebx
40dbf8:	8b 45 f4             	mov    -0xc(%ebp),%eax
40dbfb:	3b f0                	cmp    %eax,%esi
40dbfd:	8b 45 f0             	mov    -0x10(%ebp),%eax
40dc00:	72 95                	jb     0x40db97
40dc02:	5f                   	pop    %edi
40dc03:	5e                   	pop    %esi
40dc04:	5b                   	pop    %ebx
40dc05:	c9                   	leave
40dc06:	c2 08 00             	ret    $0x8
40dc09:	8b ff                	mov    %edi,%edi
40dc0b:	55                   	push   %ebp
40dc0c:	8b ec                	mov    %esp,%ebp
40dc0e:	83 ec 54             	sub    $0x54,%esp
40dc11:	a1 44 10 41 00       	mov    0x411044,%eax
40dc16:	33 c5                	xor    %ebp,%eax
40dc18:	89 45 fc             	mov    %eax,-0x4(%ebp)
40dc1b:	53                   	push   %ebx
40dc1c:	56                   	push   %esi
40dc1d:	57                   	push   %edi
40dc1e:	89 55 d0             	mov    %edx,-0x30(%ebp)
40dc21:	8b f1                	mov    %ecx,%esi
40dc23:	89 75 c4             	mov    %esi,-0x3c(%ebp)
40dc26:	8b 45 08             	mov    0x8(%ebp),%eax
40dc29:	89 45 cc             	mov    %eax,-0x34(%ebp)
40dc2c:	8b 45 0c             	mov    0xc(%ebp),%eax
40dc2f:	89 45 c8             	mov    %eax,-0x38(%ebp)
40dc32:	a1 2c 1a 40 00       	mov    0x401a2c,%eax
40dc37:	89 45 e4             	mov    %eax,-0x1c(%ebp)
40dc3a:	66 a1 30 1a 40 00    	mov    0x401a30,%ax
40dc40:	66 89 45 e8          	mov    %ax,-0x18(%ebp)
40dc44:	a1 48 15 40 00       	mov    0x401548,%eax
40dc49:	89 45 ec             	mov    %eax,-0x14(%ebp)
40dc4c:	66 a1 4c 15 40 00    	mov    0x40154c,%ax
40dc52:	66 89 45 f0          	mov    %ax,-0x10(%ebp)
40dc56:	a1 4c 18 40 00       	mov    0x40184c,%eax
40dc5b:	89 45 f4             	mov    %eax,-0xc(%ebp)
40dc5e:	66 a1 50 18 40 00    	mov    0x401850,%ax
40dc64:	6a 16                	push   $0x16
40dc66:	59                   	pop    %ecx
40dc67:	66 89 45 f8          	mov    %ax,-0x8(%ebp)
40dc6b:	e8 e7 b8 ff ff       	call   0x409557
40dc70:	8b d8                	mov    %eax,%ebx
40dc72:	85 f6                	test   %esi,%esi
40dc74:	0f 84 35 01 00 00    	je     0x40ddaf
40dc7a:	85 db                	test   %ebx,%ebx
40dc7c:	0f 84 2d 01 00 00    	je     0x40ddaf
40dc82:	33 c0                	xor    %eax,%eax
40dc84:	8d 7d d4             	lea    -0x2c(%ebp),%edi
40dc87:	ab                   	stos   %eax,%es:(%edi)
40dc88:	8b cb                	mov    %ebx,%ecx
40dc8a:	ab                   	stos   %eax,%es:(%edi)
40dc8b:	ab                   	stos   %eax,%es:(%edi)
40dc8c:	ab                   	stos   %eax,%es:(%edi)
40dc8d:	e8 68 d1 ff ff       	call   0x40adfa
40dc92:	d1 e8                	shr    $1,%eax
40dc94:	bf 30 12 40 00       	mov    $0x401230,%edi
40dc99:	50                   	push   %eax
40dc9a:	8b d7                	mov    %edi,%edx
40dc9c:	8b cb                	mov    %ebx,%ecx
40dc9e:	e8 53 c7 ff ff       	call   0x40a3f6
40dca3:	8b 8e 04 02 00 00    	mov    0x204(%esi),%ecx
40dca9:	8b c1                	mov    %ecx,%eax
40dcab:	6a 10                	push   $0x10
40dcad:	25 f0 0f 00 00       	and    $0xff0,%eax
40dcb2:	5a                   	pop    %edx
40dcb3:	2b c2                	sub    %edx,%eax
40dcb5:	0f 84 ba 01 00 00    	je     0x40de75
40dcbb:	2b c2                	sub    %edx,%eax
40dcbd:	0f 84 73 01 00 00    	je     0x40de36
40dcc3:	2b c2                	sub    %edx,%eax
40dcc5:	0f 84 24 01 00 00    	je     0x40ddef
40dccb:	2b c2                	sub    %edx,%eax
40dccd:	0f 84 ed 00 00 00    	je     0x40ddc0
40dcd3:	83 e8 20             	sub    $0x20,%eax
40dcd6:	74 4b                	je     0x40dd23
40dcd8:	83 e8 20             	sub    $0x20,%eax
40dcdb:	74 18                	je     0x40dcf5
40dcdd:	8b cb                	mov    %ebx,%ecx
40dcdf:	e8 16 d1 ff ff       	call   0x40adfa
40dce4:	d1 e8                	shr    $1,%eax
40dce6:	8b d7                	mov    %edi,%edx
40dce8:	50                   	push   %eax
40dce9:	8b cb                	mov    %ebx,%ecx
40dceb:	e8 06 c7 ff ff       	call   0x40a3f6
40dcf0:	e9 86 00 00 00       	jmp    0x40dd7b
40dcf5:	8b be 8c 02 00 00    	mov    0x28c(%esi),%edi
40dcfb:	85 ff                	test   %edi,%edi
40dcfd:	0f 84 ac 00 00 00    	je     0x40ddaf
40dd03:	8b 86 90 02 00 00    	mov    0x290(%esi),%eax
40dd09:	85 c0                	test   %eax,%eax
40dd0b:	75 02                	jne    0x40dd0f
40dd0d:	8b c6                	mov    %esi,%eax
40dd0f:	53                   	push   %ebx
40dd10:	50                   	push   %eax
40dd11:	ff 75 cc             	push   -0x34(%ebp)
40dd14:	8b cf                	mov    %edi,%ecx
40dd16:	ff 75 d0             	push   -0x30(%ebp)
40dd19:	ff 15 20 23 41 00    	call   *0x412320
40dd1f:	ff d7                	call   *%edi
40dd21:	eb 58                	jmp    0x40dd7b
40dd23:	8b 55 d0             	mov    -0x30(%ebp),%edx
40dd26:	8d 45 b0             	lea    -0x50(%ebp),%eax
40dd29:	8b 4d cc             	mov    -0x34(%ebp),%ecx
40dd2c:	50                   	push   %eax
40dd2d:	e8 87 b1 ff ff       	call   0x408eb9
40dd32:	8b f0                	mov    %eax,%esi
40dd34:	8d 7d d4             	lea    -0x2c(%ebp),%edi
40dd37:	68 fe 00 00 00       	push   $0xfe
40dd3c:	53                   	push   %ebx
40dd3d:	6a 00                	push   $0x0
40dd3f:	a5                   	movsl  %ds:(%esi),%es:(%edi)
40dd40:	8d 45 d4             	lea    -0x2c(%ebp),%eax
40dd43:	50                   	push   %eax
40dd44:	68 00 00 00 80       	push   $0x80000000
40dd49:	68 00 04 00 00       	push   $0x400
40dd4e:	a5                   	movsl  %ds:(%esi),%es:(%edi)
40dd4f:	a5                   	movsl  %ds:(%esi),%es:(%edi)
40dd50:	a5                   	movsl  %ds:(%esi),%es:(%edi)
40dd51:	ff 15 70 20 41 00    	call   *0x412070
40dd57:	85 c0                	test   %eax,%eax
40dd59:	75 1d                	jne    0x40dd78
40dd5b:	e8 94 ba ff ff       	call   0x4097f4
40dd60:	8b cb                	mov    %ebx,%ecx
40dd62:	e8 93 d0 ff ff       	call   0x40adfa
40dd67:	d1 e8                	shr    $1,%eax
40dd69:	50                   	push   %eax
40dd6a:	e8 7d b9 ff ff       	call   0x4096ec
40dd6f:	8b d0                	mov    %eax,%edx
40dd71:	8b cb                	mov    %ebx,%ecx
40dd73:	e8 7e c6 ff ff       	call   0x40a3f6
40dd78:	8b 75 c4             	mov    -0x3c(%ebp),%esi
40dd7b:	53                   	push   %ebx
40dd7c:	ff 15 d4 20 41 00    	call   *0x4120d4
40dd82:	85 c0                	test   %eax,%eax
40dd84:	75 29                	jne    0x40ddaf
40dd86:	f7 86 04 02 00 00 00 	testl  $0x100000,0x204(%esi)
40dd8d:	00 10 00
40dd90:	74 1d                	je     0x40ddaf
40dd92:	8b cb                	mov    %ebx,%ecx
40dd94:	e8 61 d0 ff ff       	call   0x40adfa
40dd99:	d1 e8                	shr    $1,%eax
40dd9b:	b9 8d 13 00 00       	mov    $0x138d,%ecx
40dda0:	50                   	push   %eax
40dda1:	e8 ab bc ff ff       	call   0x409a51
40dda6:	8b d0                	mov    %eax,%edx
40dda8:	8b cb                	mov    %ebx,%ecx
40ddaa:	e8 47 c6 ff ff       	call   0x40a3f6
40ddaf:	8b 4d fc             	mov    -0x4(%ebp),%ecx
40ddb2:	5f                   	pop    %edi
40ddb3:	5e                   	pop    %esi
40ddb4:	33 cd                	xor    %ebp,%ecx
40ddb6:	5b                   	pop    %ebx
40ddb7:	e8 14 0f 00 00       	call   0x40ecd0
40ddbc:	c9                   	leave
40ddbd:	c2 08 00             	ret    $0x8
40ddc0:	8d be 08 02 00 00    	lea    0x208(%esi),%edi
40ddc6:	f7 c1 00 20 00 00    	test   $0x2000,%ecx
40ddcc:	75 03                	jne    0x40ddd1
40ddce:	8d 7d f4             	lea    -0xc(%ebp),%edi
40ddd1:	8b 55 d0             	mov    -0x30(%ebp),%edx
40ddd4:	f7 c1 00 40 00 00    	test   $0x4000,%ecx
40ddda:	8b 4d cc             	mov    -0x34(%ebp),%ecx
40dddd:	0f 85 b1 00 00 00    	jne    0x40de94
40dde3:	e8 b0 b0 ff ff       	call   0x408e98
40dde8:	51                   	push   %ecx
40dde9:	51                   	push   %ecx
40ddea:	dd 1c 24             	fstpl  (%esp)
40dded:	eb 2d                	jmp    0x40de1c
40ddef:	8d be 08 02 00 00    	lea    0x208(%esi),%edi