415cb6:	89 04 24             	mov    %eax,(%esp)
415cb9:	89 54 24 04          	mov    %edx,0x4(%esp)
415cbd:	8b 04 24             	mov    (%esp),%eax
415cc0:	8b 54 24 04          	mov    0x4(%esp),%edx
415cc4:	59                   	pop    %ecx
415cc5:	5a                   	pop    %edx
415cc6:	c3                   	ret
415cc7:	90                   	nop
415cc8:	55                   	push   %ebp
415cc9:	8b ec                	mov    %esp,%ebp
415ccb:	ff 75 0c             	push   0xc(%ebp)
415cce:	ff 75 08             	push   0x8(%ebp)
415cd1:	33 d2                	xor    %edx,%edx
415cd3:	8b 08                	mov    (%eax),%ecx
415cd5:	ff 51 18             	call   *0x18(%ecx)
415cd8:	5d                   	pop    %ebp
415cd9:	c2 08 00             	ret    $0x8
415cdc:	53                   	push   %ebx
415cdd:	83 c4 f0             	add    $0xfffffff0,%esp
415ce0:	8b d8                	mov    %eax,%ebx
415ce2:	6a 00                	push   $0x0
415ce4:	6a 00                	push   $0x0
415ce6:	b2 01                	mov    $0x1,%dl
415ce8:	8b c3                	mov    %ebx,%eax
415cea:	8b 08                	mov    (%eax),%ecx
415cec:	ff 51 18             	call   *0x18(%ecx)
415cef:	89 44 24 08          	mov    %eax,0x8(%esp)
415cf3:	89 54 24 0c          	mov    %edx,0xc(%esp)
415cf7:	6a 00                	push   $0x0
415cf9:	6a 00                	push   $0x0
415cfb:	b2 02                	mov    $0x2,%dl
415cfd:	8b c3                	mov    %ebx,%eax
415cff:	8b 08                	mov    (%eax),%ecx
415d01:	ff 51 18             	call   *0x18(%ecx)
415d04:	89 04 24             	mov    %eax,(%esp)
415d07:	89 54 24 04          	mov    %edx,0x4(%esp)
415d0b:	ff 74 24 0c          	push   0xc(%esp)
415d0f:	ff 74 24 0c          	push   0xc(%esp)
415d13:	33 d2                	xor    %edx,%edx
415d15:	8b c3                	mov    %ebx,%eax
415d17:	8b 08                	mov    (%eax),%ecx
415d19:	ff 51 18             	call   *0x18(%ecx)
415d1c:	8b 04 24             	mov    (%esp),%eax
415d1f:	8b 54 24 04          	mov    0x4(%esp),%edx
415d23:	83 c4 10             	add    $0x10,%esp
415d26:	5b                   	pop    %ebx
415d27:	c3                   	ret
415d28:	c3                   	ret
415d29:	8d 40 00             	lea    0x0(%eax),%eax
415d2c:	55                   	push   %ebp
415d2d:	8b ec                	mov    %esp,%ebp
415d2f:	ff 75 0c             	push   0xc(%ebp)
415d32:	ff 75 08             	push   0x8(%ebp)
415d35:	8b 10                	mov    (%eax),%edx
415d37:	ff 52 08             	call   *0x8(%edx)
415d3a:	5d                   	pop    %ebp
415d3b:	c2 08 00             	ret    $0x8
415d3e:	8b c0                	mov    %eax,%eax
415d40:	55                   	push   %ebp
415d41:	8b ec                	mov    %esp,%ebp
415d43:	8b c8                	mov    %eax,%ecx
415d45:	83 7d 0c ff          	cmpl   $0xffffffff,0xc(%ebp)
415d49:	75 0b                	jne    0x415d56
415d4b:	81 7d 08 00 00 00 80 	cmpl   $0x80000000,0x8(%ebp)
415d52:	72 17                	jb     0x415d6b
415d54:	eb 02                	jmp    0x415d58
415d56:	7c 13                	jl     0x415d6b
415d58:	83 7d 0c 00          	cmpl   $0x0,0xc(%ebp)
415d5c:	75 0b                	jne    0x415d69
415d5e:	81 7d 08 ff ff ff 7f 	cmpl   $0x7fffffff,0x8(%ebp)
415d65:	76 1b                	jbe    0x415d82
415d67:	eb 02                	jmp    0x415d6b
415d69:	7e 17                	jle    0x415d82
415d6b:	8b 0d d4 0c 46 00    	mov    0x460cd4,%ecx
415d71:	b2 01                	mov    $0x1,%dl
415d73:	a1 10 78 40 00       	mov    0x407810,%eax
415d78:	e8 53 5d ff ff       	call   0x40bad0
415d7d:	e8 02 e2 fe ff       	call   0x403f84
415d82:	8b 45 08             	mov    0x8(%ebp),%eax
415d85:	8b d0                	mov    %eax,%edx
415d87:	8b c1                	mov    %ecx,%eax
415d89:	8b 08                	mov    (%eax),%ecx
415d8b:	ff 51 04             	call   *0x4(%ecx)
415d8e:	5d                   	pop    %ebp
415d8f:	c2 08 00             	ret    $0x8
415d92:	8b c0                	mov    %eax,%eax
415d94:	55                   	push   %ebp
415d95:	8b ec                	mov    %esp,%ebp
415d97:	81 c4 f8 fe ff ff    	add    $0xfffffef8,%esp
415d9d:	8d 95 f8 fe ff ff    	lea    -0x108(%ebp),%edx
415da3:	8b 45 08             	mov    0x8(%ebp),%eax
415da6:	8b 40 fc             	mov    -0x4(%eax),%eax
415da9:	8b 00                	mov    (%eax),%eax
415dab:	e8 9c d9 fe ff       	call   0x40374c
415db0:	8d 85 f8 fe ff ff    	lea    -0x108(%ebp),%eax
415db6:	89 45 f8             	mov    %eax,-0x8(%ebp)
415db9:	c6 45 fc 04          	movb   $0x4,-0x4(%ebp)
415dbd:	8d 45 f8             	lea    -0x8(%ebp),%eax
415dc0:	50                   	push   %eax
415dc1:	6a 00                	push   $0x0
415dc3:	8b 0d 10 0d 46 00    	mov    0x460d10,%ecx
415dc9:	b2 01                	mov    $0x1,%dl
415dcb:	a1 14 17 41 00       	mov    0x411714,%eax
415dd0:	e8 37 5d ff ff       	call   0x40bb0c
415dd5:	e8 aa e1 fe ff       	call   0x403f84
415dda:	8b e5                	mov    %ebp,%esp
415ddc:	5d                   	pop    %ebp
415ddd:	c3                   	ret
415dde:	8b c0                	mov    %eax,%eax
415de0:	55                   	push   %ebp
415de1:	8b ec                	mov    %esp,%ebp
415de3:	83 c4 e0             	add    $0xffffffe0,%esp
415de6:	53                   	push   %ebx
415de7:	56                   	push   %esi
415de8:	66 89 4d e6          	mov    %cx,-0x1a(%ebp)
415dec:	8b f2                	mov    %edx,%esi
415dee:	89 45 fc             	mov    %eax,-0x4(%ebp)
415df1:	8d 5d e0             	lea    -0x20(%ebp),%ebx
415df4:	8b 45 fc             	mov    -0x4(%ebp),%eax
415df7:	89 45 f4             	mov    %eax,-0xc(%ebp)
415dfa:	8b 00                	mov    (%eax),%eax
415dfc:	8b 40 18             	mov    0x18(%eax),%eax
415dff:	89 45 f0             	mov    %eax,-0x10(%ebp)
415e02:	8b 45 fc             	mov    -0x4(%ebp),%eax
415e05:	e8 36 d9 fe ff       	call   0x403740
415e0a:	89 03                	mov    %eax,(%ebx)
415e0c:	eb 09                	jmp    0x415e17
415e0e:	8b 03                	mov    (%ebx),%eax
415e10:	e8 73 d9 fe ff       	call   0x403788
415e15:	89 03                	mov    %eax,(%ebx)
415e17:	83 3b 00             	cmpl   $0x0,(%ebx)
415e1a:	74 0a                	je     0x415e26
415e1c:	8b 03                	mov    (%ebx),%eax
415e1e:	3b 05 a0 21 41 00    	cmp    0x4121a0,%eax
415e24:	75 e8                	jne    0x415e0e
415e26:	83 3b 00             	cmpl   $0x0,(%ebx)
415e29:	75 07                	jne    0x415e32
415e2b:	55                   	push   %ebp
415e2c:	e8 63 ff ff ff       	call   0x415d94
415e31:	59                   	pop    %ecx
415e32:	89 5d ec             	mov    %ebx,-0x14(%ebp)
415e35:	8b 03                	mov    (%ebx),%eax
415e37:	8b 40 18             	mov    0x18(%eax),%eax
415e3a:	89 45 e8             	mov    %eax,-0x18(%ebp)
415e3d:	8b 45 f0             	mov    -0x10(%ebp),%eax
415e40:	3b 45 e8             	cmp    -0x18(%ebp),%eax
415e43:	75 07                	jne    0x415e4c
415e45:	55                   	push   %ebp
415e46:	e8 49 ff ff ff       	call   0x415d94
415e4b:	59                   	pop    %ecx
415e4c:	8b c6                	mov    %esi,%eax
415e4e:	99                   	cltd
415e4f:	52                   	push   %edx
415e50:	50                   	push   %eax
415e51:	8a 55 e6             	mov    -0x1a(%ebp),%dl
415e54:	8b 45 fc             	mov    -0x4(%ebp),%eax
415e57:	8b 08                	mov    (%eax),%ecx
415e59:	ff 51 18             	call   *0x18(%ecx)
415e5c:	5e                   	pop    %esi
415e5d:	5b                   	pop    %ebx
415e5e:	8b e5                	mov    %ebp,%esp
415e60:	5d                   	pop    %ebp
415e61:	c3                   	ret
415e62:	8b c0                	mov    %eax,%eax
415e64:	55                   	push   %ebp
415e65:	8b ec                	mov    %esp,%ebp
415e67:	83 c4 f8             	add    $0xfffffff8,%esp
415e6a:	53                   	push   %ebx
415e6b:	56                   	push   %esi
415e6c:	8b da                	mov    %edx,%ebx
415e6e:	8b f0                	mov    %eax,%esi
415e70:	83 7d 0c ff          	cmpl   $0xffffffff,0xc(%ebp)
415e74:	75 0b                	jne    0x415e81
415e76:	81 7d 08 00 00 00 80 	cmpl   $0x80000000,0x8(%ebp)
415e7d:	72 17                	jb     0x415e96
415e7f:	eb 02                	jmp    0x415e83
415e81:	7c 13                	jl     0x415e96
415e83:	83 7d 0c 00          	cmpl   $0x0,0xc(%ebp)
415e87:	75 0b                	jne    0x415e94
415e89:	81 7d 08 ff ff ff 7f 	cmpl   $0x7fffffff,0x8(%ebp)
415e90:	76 1b                	jbe    0x415ead
415e92:	eb 02                	jmp    0x415e96
415e94:	7e 17                	jle    0x415ead
415e96:	8b 0d d4 0c 46 00    	mov    0x460cd4,%ecx
415e9c:	b2 01                	mov    $0x1,%dl
415e9e:	a1 10 78 40 00       	mov    0x407810,%eax
415ea3:	e8 28 5c ff ff       	call   0x40bad0
415ea8:	e8 d7 e0 fe ff       	call   0x403f84
415ead:	8b 45 08             	mov    0x8(%ebp),%eax
415eb0:	8b d0                	mov    %eax,%edx
415eb2:	33 c9                	xor    %ecx,%ecx
415eb4:	8a cb                	mov    %bl,%cl
415eb6:	8b c6                	mov    %esi,%eax
415eb8:	8b 18                	mov    (%eax),%ebx
415eba:	ff 53 14             	call   *0x14(%ebx)
415ebd:	99                   	cltd
415ebe:	89 45 f8             	mov    %eax,-0x8(%ebp)
415ec1:	89 55 fc             	mov    %edx,-0x4(%ebp)
415ec4:	8b 45 f8             	mov    -0x8(%ebp),%eax
415ec7:	8b 55 fc             	mov    -0x4(%ebp),%edx
415eca:	5e                   	pop    %esi
415ecb:	5b                   	pop    %ebx
415ecc:	59                   	pop    %ecx
415ecd:	59                   	pop    %ecx
415ece:	5d                   	pop    %ebp
415ecf:	c2 08 00             	ret    $0x8
415ed2:	8b c0                	mov    %eax,%eax
415ed4:	53                   	push   %ebx
415ed5:	56                   	push   %esi
415ed6:	57                   	push   %edi
415ed7:	8b d9                	mov    %ecx,%ebx
415ed9:	8b fa                	mov    %edx,%edi
415edb:	8b f0                	mov    %eax,%esi
415edd:	85 db                	test   %ebx,%ebx
415edf:	74 26                	je     0x415f07
415ee1:	8b d7                	mov    %edi,%edx
415ee3:	8b cb                	mov    %ebx,%ecx
415ee5:	8b c6                	mov    %esi,%eax
415ee7:	8b 30                	mov    (%eax),%esi
415ee9:	ff 56 0c             	call   *0xc(%esi)
415eec:	3b d8                	cmp    %eax,%ebx
415eee:	74 17                	je     0x415f07
415ef0:	8b 0d c0 0c 46 00    	mov    0x460cc0,%ecx
415ef6:	b2 01                	mov    $0x1,%dl
415ef8:	a1 dc 18 41 00       	mov    0x4118dc,%eax
415efd:	e8 ce 5b ff ff       	call   0x40bad0
415f02:	e8 7d e0 fe ff       	call   0x403f84
415f07:	5f                   	pop    %edi
415f08:	5e                   	pop    %esi
415f09:	5b                   	pop    %ebx
415f0a:	c3                   	ret
415f0b:	90                   	nop
415f0c:	53                   	push   %ebx
415f0d:	56                   	push   %esi
415f0e:	57                   	push   %edi
415f0f:	8b d9                	mov    %ecx,%ebx
415f11:	8b fa                	mov    %edx,%edi
415f13:	8b f0                	mov    %eax,%esi
415f15:	85 db                	test   %ebx,%ebx
415f17:	74 26                	je     0x415f3f
415f19:	8b d7                	mov    %edi,%edx
415f1b:	8b cb                	mov    %ebx,%ecx
415f1d:	8b c6                	mov    %esi,%eax
415f1f:	8b 30                	mov    (%eax),%esi
415f21:	ff 56 10             	call   *0x10(%esi)
415f24:	3b d8                	cmp    %eax,%ebx
415f26:	74 17                	je     0x415f3f
415f28:	8b 0d 88 0b 46 00    	mov    0x460b88,%ecx
415f2e:	b2 01                	mov    $0x1,%dl
415f30:	a1 34 19 41 00       	mov    0x411934,%eax
415f35:	e8 96 5b ff ff       	call   0x40bad0
415f3a:	e8 45 e0 fe ff       	call   0x403f84
415f3f:	5f                   	pop    %edi
415f40:	5e                   	pop    %esi
415f41:	5b                   	pop    %ebx
415f42:	c3                   	ret
415f43:	90                   	nop
415f44:	55                   	push   %ebp
415f45:	8b ec                	mov    %esp,%ebp
415f47:	83 c4 e8             	add    $0xffffffe8,%esp
415f4a:	53                   	push   %ebx
415f4b:	56                   	push   %esi
415f4c:	57                   	push   %edi
415f4d:	8b fa                	mov    %edx,%edi
415f4f:	89 45 fc             	mov    %eax,-0x4(%ebp)
415f52:	83 7d 0c 00          	cmpl   $0x0,0xc(%ebp)
415f56:	75 1d                	jne    0x415f75
415f58:	83 7d 08 00          	cmpl   $0x0,0x8(%ebp)
415f5c:	75 17                	jne    0x415f75
415f5e:	6a 00                	push   $0x0
415f60:	6a 00                	push   $0x0
415f62:	8b c7                	mov    %edi,%eax
415f64:	e8 5f fd ff ff       	call   0x415cc8
415f69:	8b c7                	mov    %edi,%eax
415f6b:	8b 10                	mov    (%eax),%edx
415f6d:	ff 12                	call   *(%edx)
415f6f:	89 45 08             	mov    %eax,0x8(%ebp)
415f72:	89 55 0c             	mov    %edx,0xc(%ebp)
415f75:	8b 45 08             	mov    0x8(%ebp),%eax
415f78:	89 45 f0             	mov    %eax,-0x10(%ebp)
415f7b:	8b 45 0c             	mov    0xc(%ebp),%eax
415f7e:	89 45 f4             	mov    %eax,-0xc(%ebp)
415f81:	83 7d 0c 00          	cmpl   $0x0,0xc(%ebp)
415f85:	75 0b                	jne    0x415f92
415f87:	81 7d 08 00 f0 00 00 	cmpl   $0xf000,0x8(%ebp)
415f8e:	76 0d                	jbe    0x415f9d
415f90:	eb 02                	jmp    0x415f94
415f92:	7e 09                	jle    0x415f9d
415f94:	c7 45 ec 00 f0 00 00 	movl   $0xf000,-0x14(%ebp)
415f9b:	eb 06                	jmp    0x415fa3
415f9d:	8b 45 08             	mov    0x8(%ebp),%eax
415fa0:	89 45 ec             	mov    %eax,-0x14(%ebp)
415fa3:	8b 45 ec             	mov    -0x14(%ebp),%eax
415fa6:	e8 8d ca fe ff       	call   0x402a38
415fab:	89 45 e8             	mov    %eax,-0x18(%ebp)
415fae:	33 c0                	xor    %eax,%eax
415fb0:	55                   	push   %ebp
415fb1:	68 20 60 41 00       	push   $0x416020
415fb6:	64 ff 30             	push   %fs:(%eax)
415fb9:	64 89 20             	mov    %esp,%fs:(%eax)
415fbc:	eb 3d                	jmp    0x415ffb
415fbe:	8b 45 ec             	mov    -0x14(%ebp),%eax
415fc1:	99                   	cltd
415fc2:	3b 55 0c             	cmp    0xc(%ebp),%edx
415fc5:	75 07                	jne    0x415fce
415fc7:	3b 45 08             	cmp    0x8(%ebp),%eax
415fca:	73 09                	jae    0x415fd5
415fcc:	eb 02                	jmp    0x415fd0
415fce:	7d 05                	jge    0x415fd5
415fd0:	8b 5d ec             	mov    -0x14(%ebp),%ebx
415fd3:	eb 03                	jmp    0x415fd8
415fd5:	8b 5d 08             	mov    0x8(%ebp),%ebx
415fd8:	8b 75 e8             	mov    -0x18(%ebp),%esi
415fdb:	8b d6                	mov    %esi,%edx
415fdd:	8b cb                	mov    %ebx,%ecx
415fdf:	8b c7                	mov    %edi,%eax
415fe1:	e8 ee fe ff ff       	call   0x415ed4
415fe6:	8b d6                	mov    %esi,%edx
415fe8:	8b cb                	mov    %ebx,%ecx
415fea:	8b 45 fc             	mov    -0x4(%ebp),%eax
415fed:	e8 1a ff ff ff       	call   0x415f0c
415ff2:	8b c3                	mov    %ebx,%eax
415ff4:	99                   	cltd
415ff5:	29 45 08             	sub    %eax,0x8(%ebp)
415ff8:	19 55 0c             	sbb    %edx,0xc(%ebp)
415ffb:	83 7d 0c 00          	cmpl   $0x0,0xc(%ebp)
415fff:	75 bd                	jne    0x415fbe
416001:	83 7d 08 00          	cmpl   $0x0,0x8(%ebp)
416005:	75 b7                	jne    0x415fbe
416007:	33 c0                	xor    %eax,%eax
416009:	5a                   	pop    %edx
41600a:	59                   	pop    %ecx
41600b:	59                   	pop    %ecx
41600c:	64 89 10             	mov    %edx,%fs:(%eax)
41600f:	68 27 60 41 00       	push   $0x416027
416014:	8b 55 ec             	mov    -0x14(%ebp),%edx
416017:	8b 45 e8             	mov    -0x18(%ebp),%eax
41601a:	e8 49 ca fe ff       	call   0x402a68
41601f:	c3                   	ret
416020:	e9 27 df fe ff       	jmp    0x403f4c
416025:	eb ed                	jmp    0x416014
416027:	8b 45 f0             	mov    -0x10(%ebp),%eax
41602a:	8b 55 f4             	mov    -0xc(%ebp),%edx
41602d:	5f                   	pop    %edi
41602e:	5e                   	pop    %esi
41602f:	5b                   	pop    %ebx
416030:	8b e5                	mov    %ebp,%esp
416032:	5d                   	pop    %ebp
416033:	c2 08 00             	ret    $0x8
416036:	8b c0                	mov    %eax,%eax