40db2a:	cc                   	int3
40db2b:	cc                   	int3
40db2c:	cc                   	int3
40db2d:	cc                   	int3
40db2e:	cc                   	int3
40db2f:	cc                   	int3
40db30:	cc                   	int3
40db31:	cc                   	int3
40db32:	cc                   	int3
40db33:	cc                   	int3
40db34:	cc                   	int3
40db35:	cc                   	int3
40db36:	cc                   	int3
40db37:	cc                   	int3
40db38:	cc                   	int3
40db39:	cc                   	int3
40db3a:	cc                   	int3
40db3b:	cc                   	int3
40db3c:	cc                   	int3
40db3d:	cc                   	int3
40db3e:	cc                   	int3
40db3f:	cc                   	int3
40db40:	55                   	push   %ebp
40db41:	8b ec                	mov    %esp,%ebp
40db43:	81 ec e0 04 00 00    	sub    $0x4e0,%esp
40db49:	8d 4d f4             	lea    -0xc(%ebp),%ecx
40db4c:	e8 73 48 ff ff       	call   0x4023c4
40db51:	a1 38 a4 4f 00       	mov    0x4fa438,%eax
40db56:	2b 05 3c a4 4f 00    	sub    0x4fa43c,%eax
40db5c:	89 85 6c fd ff ff    	mov    %eax,-0x294(%ebp)
40db62:	e8 f9 5b ff ff       	call   0x403760
40db67:	89 45 fc             	mov    %eax,-0x4(%ebp)
40db6a:	8b 4d 0c             	mov    0xc(%ebp),%ecx
40db6d:	e8 18 50 ff ff       	call   0x402b8a
40db72:	89 85 9c fd ff ff    	mov    %eax,-0x264(%ebp)
40db78:	81 7d fc ff ff 00 00 	cmpl   $0xffff,-0x4(%ebp)
40db7f:	75 14                	jne    0x40db95
40db81:	6a 02                	push   $0x2
40db83:	8b 4d 08             	mov    0x8(%ebp),%ecx
40db86:	e8 1b 5c ff ff       	call   0x4037a6
40db8b:	8b 45 08             	mov    0x8(%ebp),%eax
40db8e:	e9 c4 1e 00 00       	jmp    0x40fa57
40db93:	eb 42                	jmp    0x40dbd7
40db95:	81 7d fc fe ff 00 00 	cmpl   $0xfffe,-0x4(%ebp)
40db9c:	75 1c                	jne    0x40dbba
40db9e:	8b 4d 0c             	mov    0xc(%ebp),%ecx
40dba1:	51                   	push   %ecx
40dba2:	6a 01                	push   $0x1
40dba4:	8b 55 08             	mov    0x8(%ebp),%edx
40dba7:	52                   	push   %edx
40dba8:	e8 80 5c ff ff       	call   0x40382d
40dbad:	83 c4 0c             	add    $0xc,%esp
40dbb0:	8b 45 08             	mov    0x8(%ebp),%eax
40dbb3:	e9 9f 1e 00 00       	jmp    0x40fa57
40dbb8:	eb 1d                	jmp    0x40dbd7
40dbba:	81 7d fc fd ff 00 00 	cmpl   $0xfffd,-0x4(%ebp)
40dbc1:	75 14                	jne    0x40dbd7
40dbc3:	8b 45 0c             	mov    0xc(%ebp),%eax
40dbc6:	50                   	push   %eax
40dbc7:	8b 4d 08             	mov    0x8(%ebp),%ecx
40dbca:	e8 b8 43 ff ff       	call   0x401f87
40dbcf:	8b 45 08             	mov    0x8(%ebp),%eax
40dbd2:	e9 80 1e 00 00       	jmp    0x40fa57
40dbd7:	8b 4d fc             	mov    -0x4(%ebp),%ecx
40dbda:	81 e1 00 80 00 00    	and    $0x8000,%ecx
40dbe0:	0f 84 f8 0f 00 00    	je     0x40ebde
40dbe6:	8b 55 fc             	mov    -0x4(%ebp),%edx
40dbe9:	81 e2 00 80 00 00    	and    $0x8000,%edx
40dbef:	74 30                	je     0x40dc21
40dbf1:	8b 45 fc             	mov    -0x4(%ebp),%eax
40dbf4:	25 00 18 00 00       	and    $0x1800,%eax
40dbf9:	3d 00 08 00 00       	cmp    $0x800,%eax
40dbfe:	75 0c                	jne    0x40dc0c
40dc00:	c7 85 f4 fd ff ff 01 	movl   $0x1,-0x20c(%ebp)
40dc07:	00 00 00
40dc0a:	eb 0a                	jmp    0x40dc16
40dc0c:	c7 85 f4 fd ff ff 00 	movl   $0x0,-0x20c(%ebp)
40dc13:	00 00 00
40dc16:	8b 8d f4 fd ff ff    	mov    -0x20c(%ebp),%ecx
40dc1c:	89 4d e8             	mov    %ecx,-0x18(%ebp)
40dc1f:	eb 21                	jmp    0x40dc42
40dc21:	8b 55 fc             	mov    -0x4(%ebp),%edx
40dc24:	81 e2 00 60 00 00    	and    $0x6000,%edx
40dc2a:	75 09                	jne    0x40dc35
40dc2c:	c7 45 ec 01 00 00 00 	movl   $0x1,-0x14(%ebp)
40dc33:	eb 07                	jmp    0x40dc3c
40dc35:	c7 45 ec 00 00 00 00 	movl   $0x0,-0x14(%ebp)
40dc3c:	8b 45 ec             	mov    -0x14(%ebp),%eax
40dc3f:	89 45 e8             	mov    %eax,-0x18(%ebp)
40dc42:	83 7d e8 00          	cmpl   $0x0,-0x18(%ebp)
40dc46:	74 0e                	je     0x40dc56
40dc48:	8b 4d fc             	mov    -0x4(%ebp),%ecx
40dc4b:	81 e1 00 04 00 00    	and    $0x400,%ecx
40dc51:	89 4d e4             	mov    %ecx,-0x1c(%ebp)
40dc54:	eb 0c                	jmp    0x40dc62
40dc56:	8b 55 fc             	mov    -0x4(%ebp),%edx
40dc59:	81 e2 00 10 00 00    	and    $0x1000,%edx
40dc5f:	89 55 e4             	mov    %edx,-0x1c(%ebp)
40dc62:	83 7d e4 00          	cmpl   $0x0,-0x1c(%ebp)
40dc66:	74 44                	je     0x40dcac
40dc68:	8b 45 fc             	mov    -0x4(%ebp),%eax
40dc6b:	25 00 80 00 00       	and    $0x8000,%eax
40dc70:	74 29                	je     0x40dc9b
40dc72:	8b 4d fc             	mov    -0x4(%ebp),%ecx
40dc75:	81 e1 00 1b 00 00    	and    $0x1b00,%ecx
40dc7b:	81 f9 00 10 00 00    	cmp    $0x1000,%ecx
40dc81:	75 09                	jne    0x40dc8c
40dc83:	c7 45 e0 01 00 00 00 	movl   $0x1,-0x20(%ebp)
40dc8a:	eb 07                	jmp    0x40dc93
40dc8c:	c7 45 e0 00 00 00 00 	movl   $0x0,-0x20(%ebp)
40dc93:	8b 55 e0             	mov    -0x20(%ebp),%edx
40dc96:	89 55 dc             	mov    %edx,-0x24(%ebp)
40dc99:	eb 07                	jmp    0x40dca2
40dc9b:	c7 45 dc 00 00 00 00 	movl   $0x0,-0x24(%ebp)
40dca2:	83 7d dc 00          	cmpl   $0x0,-0x24(%ebp)
40dca6:	0f 85 32 0f 00 00    	jne    0x40ebde
40dcac:	8b 45 fc             	mov    -0x4(%ebp),%eax
40dcaf:	25 00 80 00 00       	and    $0x8000,%eax
40dcb4:	74 29                	je     0x40dcdf
40dcb6:	8b 4d fc             	mov    -0x4(%ebp),%ecx
40dcb9:	81 e1 00 18 00 00    	and    $0x1800,%ecx
40dcbf:	81 f9 00 08 00 00    	cmp    $0x800,%ecx
40dcc5:	75 09                	jne    0x40dcd0
40dcc7:	c7 45 d8 01 00 00 00 	movl   $0x1,-0x28(%ebp)
40dcce:	eb 07                	jmp    0x40dcd7
40dcd0:	c7 45 d8 00 00 00 00 	movl   $0x0,-0x28(%ebp)
40dcd7:	8b 55 d8             	mov    -0x28(%ebp),%edx
40dcda:	89 55 d0             	mov    %edx,-0x30(%ebp)
40dcdd:	eb 20                	jmp    0x40dcff
40dcdf:	8b 45 fc             	mov    -0x4(%ebp),%eax
40dce2:	25 00 60 00 00       	and    $0x6000,%eax
40dce7:	75 09                	jne    0x40dcf2
40dce9:	c7 45 d4 01 00 00 00 	movl   $0x1,-0x2c(%ebp)
40dcf0:	eb 07                	jmp    0x40dcf9
40dcf2:	c7 45 d4 00 00 00 00 	movl   $0x0,-0x2c(%ebp)
40dcf9:	8b 4d d4             	mov    -0x2c(%ebp),%ecx
40dcfc:	89 4d d0             	mov    %ecx,-0x30(%ebp)
40dcff:	83 7d d0 00          	cmpl   $0x0,-0x30(%ebp)
40dd03:	74 0e                	je     0x40dd13
40dd05:	8b 55 fc             	mov    -0x4(%ebp),%edx
40dd08:	81 e2 00 04 00 00    	and    $0x400,%edx
40dd0e:	89 55 cc             	mov    %edx,-0x34(%ebp)
40dd11:	eb 0b                	jmp    0x40dd1e
40dd13:	8b 45 fc             	mov    -0x4(%ebp),%eax
40dd16:	25 00 10 00 00       	and    $0x1000,%eax
40dd1b:	89 45 cc             	mov    %eax,-0x34(%ebp)
40dd1e:	83 7d cc 00          	cmpl   $0x0,-0x34(%ebp)
40dd22:	0f 84 8a 00 00 00    	je     0x40ddb2
40dd28:	8b 4d fc             	mov    -0x4(%ebp),%ecx
40dd2b:	81 e1 00 80 00 00    	and    $0x8000,%ecx
40dd31:	74 29                	je     0x40dd5c
40dd33:	8b 55 fc             	mov    -0x4(%ebp),%edx
40dd36:	81 e2 00 1b 00 00    	and    $0x1b00,%edx
40dd3c:	81 fa 00 11 00 00    	cmp    $0x1100,%edx
40dd42:	75 09                	jne    0x40dd4d
40dd44:	c7 45 c8 01 00 00 00 	movl   $0x1,-0x38(%ebp)
40dd4b:	eb 07                	jmp    0x40dd54
40dd4d:	c7 45 c8 00 00 00 00 	movl   $0x0,-0x38(%ebp)
40dd54:	8b 45 c8             	mov    -0x38(%ebp),%eax
40dd57:	89 45 c4             	mov    %eax,-0x3c(%ebp)
40dd5a:	eb 07                	jmp    0x40dd63
40dd5c:	c7 45 c4 00 00 00 00 	movl   $0x0,-0x3c(%ebp)
40dd63:	83 7d c4 00          	cmpl   $0x0,-0x3c(%ebp)
40dd67:	0f 85 71 0e 00 00    	jne    0x40ebde
40dd6d:	8b 4d fc             	mov    -0x4(%ebp),%ecx
40dd70:	81 e1 00 80 00 00    	and    $0x8000,%ecx
40dd76:	74 29                	je     0x40dda1
40dd78:	8b 55 fc             	mov    -0x4(%ebp),%edx
40dd7b:	81 e2 00 1b 00 00    	and    $0x1b00,%edx
40dd81:	81 fa 00 12 00 00    	cmp    $0x1200,%edx
40dd87:	75 09                	jne    0x40dd92
40dd89:	c7 45 c0 01 00 00 00 	movl   $0x1,-0x40(%ebp)
40dd90:	eb 07                	jmp    0x40dd99
40dd92:	c7 45 c0 00 00 00 00 	movl   $0x0,-0x40(%ebp)
40dd99:	8b 45 c0             	mov    -0x40(%ebp),%eax
40dd9c:	89 45 bc             	mov    %eax,-0x44(%ebp)
40dd9f:	eb 07                	jmp    0x40dda8
40dda1:	c7 45 bc 00 00 00 00 	movl   $0x0,-0x44(%ebp)
40dda8:	83 7d bc 00          	cmpl   $0x0,-0x44(%ebp)
40ddac:	0f 85 2c 0e 00 00    	jne    0x40ebde
40ddb2:	8b 4d fc             	mov    -0x4(%ebp),%ecx
40ddb5:	81 e1 00 40 00 00    	and    $0x4000,%ecx
40ddbb:	74 6e                	je     0x40de2b
40ddbd:	e8 24 47 ff ff       	call   0x4024e6
40ddc2:	85 c0                	test   %eax,%eax
40ddc4:	74 41                	je     0x40de07
40ddc6:	e8 bf 5c ff ff       	call   0x403a8a
40ddcb:	85 c0                	test   %eax,%eax
40ddcd:	74 38                	je     0x40de07
40ddcf:	8d 95 d8 fc ff ff    	lea    -0x328(%ebp),%edx
40ddd5:	52                   	push   %edx
40ddd6:	e8 22 53 ff ff       	call   0x4030fd
40dddb:	83 c4 04             	add    $0x4,%esp
40ddde:	50                   	push   %eax
40dddf:	6a 20                	push   $0x20
40dde1:	8d 85 d0 fc ff ff    	lea    -0x330(%ebp),%eax
40dde7:	50                   	push   %eax
40dde8:	e8 44 4c ff ff       	call   0x402a31
40dded:	83 c4 0c             	add    $0xc,%esp
40ddf0:	89 85 1c fd ff ff    	mov    %eax,-0x2e4(%ebp)
40ddf6:	8b 8d 1c fd ff ff    	mov    -0x2e4(%ebp),%ecx
40ddfc:	51                   	push   %ecx
40ddfd:	8d 4d f4             	lea    -0xc(%ebp),%ecx
40de00:	e8 97 4f ff ff       	call   0x402d9c
40de05:	eb 24                	jmp    0x40de2b
40de07:	8d 95 c8 fc ff ff    	lea    -0x338(%ebp),%edx
40de0d:	52                   	push   %edx
40de0e:	e8 ea 52 ff ff       	call   0x4030fd
40de13:	83 c4 04             	add    $0x4,%esp
40de16:	89 85 18 fd ff ff    	mov    %eax,-0x2e8(%ebp)
40de1c:	8b 85 18 fd ff ff    	mov    -0x2e8(%ebp),%eax
40de22:	50                   	push   %eax
40de23:	8d 4d f4             	lea    -0xc(%ebp),%ecx
40de26:	e8 87 3e ff ff       	call   0x401cb2
40de2b:	8b 4d fc             	mov    -0x4(%ebp),%ecx
40de2e:	81 e1 00 80 00 00    	and    $0x8000,%ecx
40de34:	74 29                	je     0x40de5f
40de36:	8b 55 fc             	mov    -0x4(%ebp),%edx
40de39:	81 e2 00 18 00 00    	and    $0x1800,%edx
40de3f:	81 fa 00 08 00 00    	cmp    $0x800,%edx
40de45:	75 09                	jne    0x40de50
40de47:	c7 45 b8 01 00 00 00 	movl   $0x1,-0x48(%ebp)
40de4e:	eb 07                	jmp    0x40de57
40de50:	c7 45 b8 00 00 00 00 	movl   $0x0,-0x48(%ebp)
40de57:	8b 45 b8             	mov    -0x48(%ebp),%eax
40de5a:	89 45 b0             	mov    %eax,-0x50(%ebp)
40de5d:	eb 21                	jmp    0x40de80
40de5f:	8b 4d fc             	mov    -0x4(%ebp),%ecx
40de62:	81 e1 00 60 00 00    	and    $0x6000,%ecx
40de68:	75 09                	jne    0x40de73
40de6a:	c7 45 b4 01 00 00 00 	movl   $0x1,-0x4c(%ebp)
40de71:	eb 07                	jmp    0x40de7a
40de73:	c7 45 b4 00 00 00 00 	movl   $0x0,-0x4c(%ebp)
40de7a:	8b 55 b4             	mov    -0x4c(%ebp),%edx
40de7d:	89 55 b0             	mov    %edx,-0x50(%ebp)
40de80:	83 7d b0 00          	cmpl   $0x0,-0x50(%ebp)
40de84:	74 0d                	je     0x40de93
40de86:	8b 45 fc             	mov    -0x4(%ebp),%eax
40de89:	25 00 04 00 00       	and    $0x400,%eax
40de8e:	89 45 ac             	mov    %eax,-0x54(%ebp)
40de91:	eb 0c                	jmp    0x40de9f
40de93:	8b 4d fc             	mov    -0x4(%ebp),%ecx
40de96:	81 e1 00 10 00 00    	and    $0x1000,%ecx
40de9c:	89 4d ac             	mov    %ecx,-0x54(%ebp)
40de9f:	83 7d ac 00          	cmpl   $0x0,-0x54(%ebp)
40dea3:	0f 84 92 01 00 00    	je     0x40e03b
40dea9:	8b 55 fc             	mov    -0x4(%ebp),%edx
40deac:	81 e2 00 80 00 00    	and    $0x8000,%edx
40deb2:	74 27                	je     0x40dedb
40deb4:	8b 45 fc             	mov    -0x4(%ebp),%eax
40deb7:	25 00 18 00 00       	and    $0x1800,%eax
40debc:	3d 00 18 00 00       	cmp    $0x1800,%eax
40dec1:	75 09                	jne    0x40decc
40dec3:	c7 45 a8 01 00 00 00 	movl   $0x1,-0x58(%ebp)
40deca:	eb 07                	jmp    0x40ded3
40decc:	c7 45 a8 00 00 00 00 	movl   $0x0,-0x58(%ebp)
40ded3:	8b 4d a8             	mov    -0x58(%ebp),%ecx
40ded6:	89 4d a4             	mov    %ecx,-0x5c(%ebp)
40ded9:	eb 07                	jmp    0x40dee2
40dedb:	c7 45 a4 00 00 00 00 	movl   $0x0,-0x5c(%ebp)
40dee2:	83 7d a4 00          	cmpl   $0x0,-0x5c(%ebp)
40dee6:	0f 84 4f 01 00 00    	je     0x40e03b
40deec:	6a 7b                	push   $0x7b
40deee:	8d 95 c0 fc ff ff    	lea    -0x340(%ebp),%edx
40def4:	52                   	push   %edx
40def5:	8b 4d 0c             	mov    0xc(%ebp),%ecx
40def8:	e8 6c 59 ff ff       	call   0x403869
40defd:	89 85 e8 fd ff ff    	mov    %eax,-0x218(%ebp)
40df03:	8d 85 b8 fc ff ff    	lea    -0x348(%ebp),%eax
40df09:	50                   	push   %eax
40df0a:	e8 27 3c ff ff       	call   0x401b36
40df0f:	83 c4 04             	add    $0x4,%esp
40df12:	50                   	push   %eax
40df13:	8d 8d b0 fc ff ff    	lea    -0x350(%ebp),%ecx
40df19:	51                   	push   %ecx
40df1a:	8b 8d e8 fd ff ff    	mov    -0x218(%ebp),%ecx
40df20:	e8 a6 51 ff ff       	call   0x4030cb
40df25:	89 85 e4 fd ff ff    	mov    %eax,-0x21c(%ebp)
40df2b:	8b 95 e4 fd ff ff    	mov    -0x21c(%ebp),%edx
40df31:	52                   	push   %edx
40df32:	8d 4d f4             	lea    -0xc(%ebp),%ecx
40df35:	e8 18 48 ff ff       	call   0x402752
40df3a:	8d 85 e8 fc ff ff    	lea    -0x318(%ebp),%eax
40df40:	50                   	push   %eax
40df41:	e8 93 5c ff ff       	call   0x403bd9
40df46:	83 c4 04             	add    $0x4,%esp
40df49:	e8 78 47 ff ff       	call   0x4026c6
40df4e:	85 c0                	test   %eax,%eax
40df50:	75 4a                	jne    0x40df9c
40df52:	8d 8d e8 fc ff ff    	lea    -0x318(%ebp),%ecx
40df58:	51                   	push   %ecx
40df59:	6a 2c                	push   $0x2c
40df5b:	8d 95 a8 fc ff ff    	lea    -0x358(%ebp),%edx
40df61:	52                   	push   %edx
40df62:	e8 ca 4a ff ff       	call   0x402a31
40df67:	83 c4 0c             	add    $0xc,%esp
40df6a:	89 85 e0 fd ff ff    	mov    %eax,-0x220(%ebp)
40df70:	68 b8 7d 49 00       	push   $0x497db8
40df75:	8d 85 a0 fc ff ff    	lea    -0x360(%ebp),%eax
40df7b:	50                   	push   %eax
40df7c:	8b 8d e0 fd ff ff    	mov    -0x220(%ebp),%ecx
40df82:	e8 14 31 ff ff       	call   0x40109b
40df87:	89 85 dc fd ff ff    	mov    %eax,-0x224(%ebp)
40df8d:	8b 8d dc fd ff ff    	mov    -0x224(%ebp),%ecx
40df93:	51                   	push   %ecx
40df94:	8d 4d f4             	lea    -0xc(%ebp),%ecx
40df97:	e8 b6 47 ff ff       	call   0x402752
40df9c:	68 bc 7d 49 00       	push   $0x497dbc
40dfa1:	8d 4d f4             	lea    -0xc(%ebp),%ecx
40dfa4:	e8 9c 4f ff ff       	call   0x402f45
40dfa9:	8d 95 e0 fc ff ff    	lea    -0x320(%ebp),%edx
40dfaf:	52                   	push   %edx
40dfb0:	e8 22 31 ff ff       	call   0x4010d7
40dfb5:	83 c4 04             	add    $0x4,%esp
40dfb8:	e8 29 45 ff ff       	call   0x4024e6
40dfbd:	85 c0                	test   %eax,%eax
40dfbf:	74 75                	je     0x40e036
40dfc1:	e8 8c 3d ff ff       	call   0x401d52
40dfc6:	85 c0                	test   %eax,%eax
40dfc8:	74 6c                	je     0x40e036
40dfca:	e8 f7 46 ff ff       	call   0x4026c6
40dfcf:	85 c0                	test   %eax,%eax
40dfd1:	75 63                	jne    0x40e036
40dfd3:	8d 85 e0 fc ff ff    	lea    -0x320(%ebp),%eax
40dfd9:	50                   	push   %eax
40dfda:	6a 20                	push   $0x20
40dfdc:	8d 8d 98 fc ff ff    	lea    -0x368(%ebp),%ecx
40dfe2:	51                   	push   %ecx
40dfe3:	e8 49 4a ff ff       	call   0x402a31
40dfe8:	83 c4 0c             	add    $0xc,%esp
40dfeb:	89 85 d8 fd ff ff    	mov    %eax,-0x228(%ebp)
40dff1:	6a 20                	push   $0x20
40dff3:	8d 95 90 fc ff ff    	lea    -0x370(%ebp),%edx
40dff9:	52                   	push   %edx
40dffa:	8b 8d d8 fd ff ff    	mov    -0x228(%ebp),%ecx
40e000:	e8 64 58 ff ff       	call   0x403869
40e005:	89 85 d4 fd ff ff    	mov    %eax,-0x22c(%ebp)
40e00b:	8d 45 f4             	lea    -0xc(%ebp),%eax
40e00e:	50                   	push   %eax
40e00f:	8d 8d 88 fc ff ff    	lea    -0x378(%ebp),%ecx
40e015:	51                   	push   %ecx
40e016:	8b 8d d4 fd ff ff    	mov    -0x22c(%ebp),%ecx
40e01c:	e8 aa 50 ff ff       	call   0x4030cb
40e021:	89 85 d0 fd ff ff    	mov    %eax,-0x230(%ebp)
40e027:	8b 95 d0 fd ff ff    	mov    -0x230(%ebp),%edx
40e02d:	52                   	push   %edx
40e02e:	8d 4d f4             	lea    -0xc(%ebp),%ecx
40e031:	e8 66 4d ff ff       	call   0x402d9c
40e036:	e9 9e 0b 00 00       	jmp    0x40ebd9
40e03b:	8d 8d 08 fd ff ff    	lea    -0x2f8(%ebp),%ecx