414f07:	50                   	push   %eax
414f08:	ff 75 fc             	push   -0x4(%ebp)
414f0b:	ff 75 20             	push   0x20(%ebp)
414f0e:	ff 75 18             	push   0x18(%ebp)
414f11:	ff 75 14             	push   0x14(%ebp)
414f14:	ff 75 10             	push   0x10(%ebp)
414f17:	57                   	push   %edi
414f18:	ff 75 08             	push   0x8(%ebp)
414f1b:	e8 64 f6 ff ff       	call   0x414584
414f20:	eb 64                	jmp    0x414f86
414f22:	83 ee 65             	sub    $0x65,%esi
414f25:	74 42                	je     0x414f69
414f27:	83 ee 01             	sub    $0x1,%esi
414f2a:	74 1f                	je     0x414f4b
414f2c:	ff 75 2c             	push   0x2c(%ebp)
414f2f:	53                   	push   %ebx
414f30:	50                   	push   %eax
414f31:	ff 75 fc             	push   -0x4(%ebp)
414f34:	ff 75 20             	push   0x20(%ebp)
414f37:	ff 75 18             	push   0x18(%ebp)
414f3a:	ff 75 14             	push   0x14(%ebp)
414f3d:	ff 75 10             	push   0x10(%ebp)
414f40:	57                   	push   %edi
414f41:	ff 75 08             	push   0x8(%ebp)
414f44:	e8 c3 fc ff ff       	call   0x414c0c
414f49:	eb 3b                	jmp    0x414f86
414f4b:	53                   	push   %ebx
414f4c:	ff 75 2c             	push   0x2c(%ebp)
414f4f:	ff 75 20             	push   0x20(%ebp)
414f52:	ff 75 18             	push   0x18(%ebp)
414f55:	ff 75 14             	push   0x14(%ebp)
414f58:	ff 75 10             	push   0x10(%ebp)
414f5b:	57                   	push   %edi
414f5c:	ff 75 08             	push   0x8(%ebp)
414f5f:	e8 1f fb ff ff       	call   0x414a83
414f64:	83 c4 20             	add    $0x20,%esp
414f67:	eb 20                	jmp    0x414f89
414f69:	53                   	push   %ebx
414f6a:	ff 75 2c             	push   0x2c(%ebp)
414f6d:	50                   	push   %eax
414f6e:	ff 75 fc             	push   -0x4(%ebp)
414f71:	ff 75 20             	push   0x20(%ebp)
414f74:	ff 75 18             	push   0x18(%ebp)
414f77:	ff 75 14             	push   0x14(%ebp)
414f7a:	ff 75 10             	push   0x10(%ebp)
414f7d:	57                   	push   %edi
414f7e:	ff 75 08             	push   0x8(%ebp)
414f81:	e8 0d f9 ff ff       	call   0x414893
414f86:	83 c4 28             	add    $0x28,%esp
414f89:	5b                   	pop    %ebx
414f8a:	5f                   	pop    %edi
414f8b:	5e                   	pop    %esi
414f8c:	c9                   	leave
414f8d:	c3                   	ret
414f8e:	8b ff                	mov    %edi,%edi
414f90:	55                   	push   %ebp
414f91:	8b ec                	mov    %esp,%ebp
414f93:	8b 45 08             	mov    0x8(%ebp),%eax
414f96:	85 c0                	test   %eax,%eax
414f98:	75 15                	jne    0x414faf
414f9a:	e8 5c 9e ff ff       	call   0x40edfb
414f9f:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
414fa5:	e8 d7 80 ff ff       	call   0x40d081
414faa:	83 c8 ff             	or     $0xffffffff,%eax
414fad:	5d                   	pop    %ebp
414fae:	c3                   	ret
414faf:	8b 40 10             	mov    0x10(%eax),%eax
414fb2:	90                   	nop
414fb3:	5d                   	pop    %ebp
414fb4:	c3                   	ret
414fb5:	8b 0d 14 30 43 00    	mov    0x433014,%ecx
414fbb:	33 c0                	xor    %eax,%eax
414fbd:	83 c9 01             	or     $0x1,%ecx
414fc0:	39 0d cc 4c 43 00    	cmp    %ecx,0x434ccc
414fc6:	0f 94 c0             	sete   %al
414fc9:	c3                   	ret
414fca:	8b ff                	mov    %edi,%edi
414fcc:	55                   	push   %ebp
414fcd:	8b ec                	mov    %esp,%ebp
414fcf:	6a 02                	push   $0x2
414fd1:	e8 0e 67 ff ff       	call   0x40b6e4
414fd6:	59                   	pop    %ecx
414fd7:	39 45 08             	cmp    %eax,0x8(%ebp)
414fda:	74 25                	je     0x415001
414fdc:	6a 01                	push   $0x1
414fde:	e8 01 67 ff ff       	call   0x40b6e4
414fe3:	59                   	pop    %ecx
414fe4:	39 45 08             	cmp    %eax,0x8(%ebp)
414fe7:	75 14                	jne    0x414ffd
414fe9:	ff 75 08             	push   0x8(%ebp)
414fec:	e8 9d ff ff ff       	call   0x414f8e
414ff1:	50                   	push   %eax
414ff2:	e8 01 b6 00 00       	call   0x4205f8
414ff7:	59                   	pop    %ecx
414ff8:	59                   	pop    %ecx
414ff9:	85 c0                	test   %eax,%eax
414ffb:	75 04                	jne    0x415001
414ffd:	32 c0                	xor    %al,%al
414fff:	5d                   	pop    %ebp
415000:	c3                   	ret
415001:	b0 01                	mov    $0x1,%al
415003:	5d                   	pop    %ebp
415004:	c3                   	ret
415005:	8b ff                	mov    %edi,%edi
415007:	55                   	push   %ebp
415008:	8b ec                	mov    %esp,%ebp
41500a:	53                   	push   %ebx
41500b:	56                   	push   %esi
41500c:	8b 75 08             	mov    0x8(%ebp),%esi
41500f:	57                   	push   %edi
415010:	56                   	push   %esi
415011:	e8 b4 ff ff ff       	call   0x414fca
415016:	59                   	pop    %ecx
415017:	84 c0                	test   %al,%al
415019:	0f 84 8b 00 00 00    	je     0x4150aa
41501f:	6a 01                	push   $0x1
415021:	e8 be 66 ff ff       	call   0x40b6e4
415026:	59                   	pop    %ecx
415027:	6a 02                	push   $0x2
415029:	5b                   	pop    %ebx
41502a:	3b f0                	cmp    %eax,%esi
41502c:	75 07                	jne    0x415035
41502e:	bf d0 4c 43 00       	mov    $0x434cd0,%edi
415033:	eb 10                	jmp    0x415045
415035:	53                   	push   %ebx
415036:	e8 a9 66 ff ff       	call   0x40b6e4
41503b:	59                   	pop    %ecx
41503c:	3b f0                	cmp    %eax,%esi
41503e:	75 6a                	jne    0x4150aa
415040:	bf d4 4c 43 00       	mov    $0x434cd4,%edi
415045:	ff 05 1c 46 43 00    	incl   0x43461c
41504b:	8d 4e 0c             	lea    0xc(%esi),%ecx
41504e:	8b 01                	mov    (%ecx),%eax
415050:	90                   	nop
415051:	a9 c0 04 00 00       	test   $0x4c0,%eax
415056:	75 52                	jne    0x4150aa
415058:	b8 82 02 00 00       	mov    $0x282,%eax
41505d:	f0 09 01             	lock or %eax,(%ecx)
415060:	8b 07                	mov    (%edi),%eax
415062:	85 c0                	test   %eax,%eax
415064:	75 2d                	jne    0x415093
415066:	68 00 10 00 00       	push   $0x1000
41506b:	e8 f6 ea ff ff       	call   0x413b66
415070:	6a 00                	push   $0x0
415072:	89 07                	mov    %eax,(%edi)
415074:	e8 92 e0 ff ff       	call   0x41310b
415079:	8b 07                	mov    (%edi),%eax
41507b:	59                   	pop    %ecx
41507c:	59                   	pop    %ecx
41507d:	85 c0                	test   %eax,%eax
41507f:	75 12                	jne    0x415093
415081:	8d 4e 14             	lea    0x14(%esi),%ecx
415084:	89 5e 08             	mov    %ebx,0x8(%esi)
415087:	89 4e 04             	mov    %ecx,0x4(%esi)
41508a:	89 0e                	mov    %ecx,(%esi)
41508c:	89 5e 18             	mov    %ebx,0x18(%esi)
41508f:	b0 01                	mov    $0x1,%al
415091:	eb 19                	jmp    0x4150ac
415093:	89 46 04             	mov    %eax,0x4(%esi)
415096:	8b 07                	mov    (%edi),%eax
415098:	89 06                	mov    %eax,(%esi)
41509a:	c7 46 08 00 10 00 00 	movl   $0x1000,0x8(%esi)
4150a1:	c7 46 18 00 10 00 00 	movl   $0x1000,0x18(%esi)
4150a8:	eb e5                	jmp    0x41508f
4150aa:	32 c0                	xor    %al,%al
4150ac:	5f                   	pop    %edi
4150ad:	5e                   	pop    %esi
4150ae:	5b                   	pop    %ebx
4150af:	5d                   	pop    %ebp
4150b0:	c3                   	ret
4150b1:	8b ff                	mov    %edi,%edi
4150b3:	55                   	push   %ebp
4150b4:	8b ec                	mov    %esp,%ebp
4150b6:	80 7d 08 00          	cmpb   $0x0,0x8(%ebp)
4150ba:	74 2d                	je     0x4150e9
4150bc:	56                   	push   %esi
4150bd:	8b 75 0c             	mov    0xc(%ebp),%esi
4150c0:	57                   	push   %edi
4150c1:	8d 7e 0c             	lea    0xc(%esi),%edi
4150c4:	8b 07                	mov    (%edi),%eax
4150c6:	90                   	nop
4150c7:	c1 e8 09             	shr    $0x9,%eax
4150ca:	a8 01                	test   $0x1,%al
4150cc:	74 19                	je     0x4150e7
4150ce:	56                   	push   %esi
4150cf:	e8 fd 83 ff ff       	call   0x40d4d1
4150d4:	59                   	pop    %ecx
4150d5:	b8 7f fd ff ff       	mov    $0xfffffd7f,%eax
4150da:	f0 21 07             	lock and %eax,(%edi)
4150dd:	33 c0                	xor    %eax,%eax
4150df:	89 46 18             	mov    %eax,0x18(%esi)
4150e2:	89 46 04             	mov    %eax,0x4(%esi)
4150e5:	89 06                	mov    %eax,(%esi)
4150e7:	5f                   	pop    %edi
4150e8:	5e                   	pop    %esi
4150e9:	5d                   	pop    %ebp
4150ea:	c3                   	ret
4150eb:	8b ff                	mov    %edi,%edi
4150ed:	55                   	push   %ebp
4150ee:	8b ec                	mov    %esp,%ebp
4150f0:	0f b7 45 0e          	movzwl 0xe(%ebp),%eax
4150f4:	25 00 80 00 00       	and    $0x8000,%eax
4150f9:	5d                   	pop    %ebp
4150fa:	c3                   	ret
4150fb:	8b ff                	mov    %edi,%edi
4150fd:	55                   	push   %ebp
4150fe:	8b ec                	mov    %esp,%ebp
415100:	8b 45 08             	mov    0x8(%ebp),%eax
415103:	a8 20                	test   $0x20,%al
415105:	74 04                	je     0x41510b
415107:	6a 05                	push   $0x5
415109:	eb 17                	jmp    0x415122
41510b:	a8 08                	test   $0x8,%al
41510d:	74 05                	je     0x415114
41510f:	33 c0                	xor    %eax,%eax
415111:	40                   	inc    %eax
415112:	5d                   	pop    %ebp
415113:	c3                   	ret
415114:	a8 04                	test   $0x4,%al
415116:	74 04                	je     0x41511c
415118:	6a 02                	push   $0x2
41511a:	eb 06                	jmp    0x415122
41511c:	a8 01                	test   $0x1,%al
41511e:	74 05                	je     0x415125
415120:	6a 03                	push   $0x3
415122:	58                   	pop    %eax
415123:	5d                   	pop    %ebp
415124:	c3                   	ret
415125:	0f b6 c0             	movzbl %al,%eax
415128:	83 e0 02             	and    $0x2,%eax
41512b:	03 c0                	add    %eax,%eax
41512d:	5d                   	pop    %ebp
41512e:	c3                   	ret
41512f:	8b ff                	mov    %edi,%edi
415131:	53                   	push   %ebx
415132:	8b dc                	mov    %esp,%ebx
415134:	51                   	push   %ecx
415135:	51                   	push   %ecx
415136:	83 e4 f0             	and    $0xfffffff0,%esp
415139:	83 c4 04             	add    $0x4,%esp
41513c:	55                   	push   %ebp
41513d:	8b 6b 04             	mov    0x4(%ebx),%ebp
415140:	89 6c 24 04          	mov    %ebp,0x4(%esp)
415144:	8b ec                	mov    %esp,%ebp
415146:	81 ec 88 00 00 00    	sub    $0x88,%esp
41514c:	a1 14 30 43 00       	mov    0x433014,%eax
415151:	33 c5                	xor    %ebp,%eax
415153:	89 45 fc             	mov    %eax,-0x4(%ebp)
415156:	56                   	push   %esi
415157:	8b 73 20             	mov    0x20(%ebx),%esi
41515a:	8d 43 18             	lea    0x18(%ebx),%eax
41515d:	57                   	push   %edi
41515e:	56                   	push   %esi
41515f:	50                   	push   %eax
415160:	ff 73 08             	push   0x8(%ebx)
415163:	e8 95 00 00 00       	call   0x4151fd
415168:	83 c4 0c             	add    $0xc,%esp
41516b:	85 c0                	test   %eax,%eax
41516d:	75 26                	jne    0x415195
41516f:	83 65 c0 fe          	andl   $0xfffffffe,-0x40(%ebp)
415173:	50                   	push   %eax
415174:	8d 43 18             	lea    0x18(%ebx),%eax
415177:	50                   	push   %eax
415178:	8d 43 10             	lea    0x10(%ebx),%eax
41517b:	50                   	push   %eax
41517c:	ff 73 0c             	push   0xc(%ebx)
41517f:	8d 43 20             	lea    0x20(%ebx),%eax
415182:	ff 73 08             	push   0x8(%ebx)
415185:	50                   	push   %eax
415186:	8d 45 80             	lea    -0x80(%ebp),%eax
415189:	50                   	push   %eax
41518a:	e8 7c 02 00 00       	call   0x41540b
41518f:	8b 73 20             	mov    0x20(%ebx),%esi
415192:	83 c4 1c             	add    $0x1c,%esp
415195:	ff 73 08             	push   0x8(%ebx)
415198:	e8 5e ff ff ff       	call   0x4150fb
41519d:	59                   	pop    %ecx
41519e:	8b f8                	mov    %eax,%edi
4151a0:	e8 bd aa ff ff       	call   0x40fc62
4151a5:	84 c0                	test   %al,%al
4151a7:	74 29                	je     0x4151d2
4151a9:	85 ff                	test   %edi,%edi
4151ab:	74 25                	je     0x4151d2
4151ad:	dd 43 18             	fldl   0x18(%ebx)
4151b0:	56                   	push   %esi
4151b1:	83 ec 18             	sub    $0x18,%esp
4151b4:	dd 5c 24 10          	fstpl  0x10(%esp)
4151b8:	d9 ee                	fldz
4151ba:	dd 5c 24 08          	fstpl  0x8(%esp)
4151be:	dd 43 10             	fldl   0x10(%ebx)
4151c1:	dd 1c 24             	fstpl  (%esp)
4151c4:	ff 73 0c             	push   0xc(%ebx)
4151c7:	57                   	push   %edi
4151c8:	e8 63 05 00 00       	call   0x415730
4151cd:	83 c4 24             	add    $0x24,%esp
4151d0:	eb 18                	jmp    0x4151ea
4151d2:	57                   	push   %edi
4151d3:	e8 29 05 00 00       	call   0x415701
4151d8:	c7 04 24 ff ff 00 00 	movl   $0xffff,(%esp)
4151df:	56                   	push   %esi
4151e0:	e8 d9 07 00 00       	call   0x4159be
4151e5:	dd 43 18             	fldl   0x18(%ebx)
4151e8:	59                   	pop    %ecx
4151e9:	59                   	pop    %ecx
4151ea:	8b 4d fc             	mov    -0x4(%ebp),%ecx
4151ed:	5f                   	pop    %edi
4151ee:	33 cd                	xor    %ebp,%ecx
4151f0:	5e                   	pop    %esi
4151f1:	e8 16 22 ff ff       	call   0x40740c
4151f6:	8b e5                	mov    %ebp,%esp
4151f8:	5d                   	pop    %ebp
4151f9:	8b e3                	mov    %ebx,%esp
4151fb:	5b                   	pop    %ebx
4151fc:	c3                   	ret
4151fd:	8b ff                	mov    %edi,%edi
4151ff:	55                   	push   %ebp
415200:	8b ec                	mov    %esp,%ebp
415202:	83 ec 10             	sub    $0x10,%esp
415205:	53                   	push   %ebx
415206:	8b 5d 08             	mov    0x8(%ebp),%ebx
415209:	56                   	push   %esi
41520a:	8b f3                	mov    %ebx,%esi
41520c:	83 e6 1f             	and    $0x1f,%esi
41520f:	f6 c3 08             	test   $0x8,%bl
415212:	74 16                	je     0x41522a
415214:	f6 45 10 01          	testb  $0x1,0x10(%ebp)
415218:	74 10                	je     0x41522a
41521a:	6a 01                	push   $0x1
41521c:	e8 c7 07 00 00       	call   0x4159e8
415221:	59                   	pop    %ecx
415222:	83 e6 f7             	and    $0xfffffff7,%esi
415225:	e9 9d 01 00 00       	jmp    0x4153c7
41522a:	8b c3                	mov    %ebx,%eax
41522c:	23 45 10             	and    0x10(%ebp),%eax
41522f:	a8 04                	test   $0x4,%al
415231:	74 10                	je     0x415243
415233:	6a 04                	push   $0x4
415235:	e8 ae 07 00 00       	call   0x4159e8
41523a:	59                   	pop    %ecx
41523b:	83 e6 fb             	and    $0xfffffffb,%esi
41523e:	e9 84 01 00 00       	jmp    0x4153c7
415243:	f6 c3 01             	test   $0x1,%bl
415246:	0f 84 9a 00 00 00    	je     0x4152e6
41524c:	f6 45 10 08          	testb  $0x8,0x10(%ebp)
415250:	0f 84 90 00 00 00    	je     0x4152e6
415256:	6a 08                	push   $0x8
415258:	e8 8b 07 00 00       	call   0x4159e8
41525d:	8b 45 10             	mov    0x10(%ebp),%eax
415260:	59                   	pop    %ecx
415261:	b9 00 0c 00 00       	mov    $0xc00,%ecx