408e0f:	6a 00                	push   $0x0
408e11:	e8 00 fa ff ff       	call   0x408816
408e16:	85 c0                	test   %eax,%eax
408e18:	74 0d                	je     0x408e27
408e1a:	81 78 04 00 00 02 00 	cmpl   $0x20000,0x4(%eax)
408e21:	75 04                	jne    0x408e27
408e23:	8b 40 0c             	mov    0xc(%eax),%eax
408e26:	c3                   	ret
408e27:	33 c0                	xor    %eax,%eax
408e29:	c3                   	ret
408e2a:	6a 00                	push   $0x0
408e2c:	e8 e5 f9 ff ff       	call   0x408816
408e31:	85 c0                	test   %eax,%eax
408e33:	74 18                	je     0x408e4d
408e35:	81 78 04 00 00 04 00 	cmpl   $0x40000,0x4(%eax)
408e3c:	74 09                	je     0x408e47
408e3e:	81 78 04 00 00 03 00 	cmpl   $0x30000,0x4(%eax)
408e45:	75 06                	jne    0x408e4d
408e47:	8b 40 0c             	mov    0xc(%eax),%eax
408e4a:	8b 00                	mov    (%eax),%eax
408e4c:	c3                   	ret
408e4d:	83 c8 ff             	or     $0xffffffff,%eax
408e50:	c3                   	ret
408e51:	6a 00                	push   $0x0
408e53:	e8 be f9 ff ff       	call   0x408816
408e58:	85 c0                	test   %eax,%eax
408e5a:	74 18                	je     0x408e74
408e5c:	81 78 04 00 00 04 00 	cmpl   $0x40000,0x4(%eax)
408e63:	74 09                	je     0x408e6e
408e65:	81 78 04 00 00 03 00 	cmpl   $0x30000,0x4(%eax)
408e6c:	75 06                	jne    0x408e74
408e6e:	8b 40 0c             	mov    0xc(%eax),%eax
408e71:	8b 00                	mov    (%eax),%eax
408e73:	c3                   	ret
408e74:	33 c0                	xor    %eax,%eax
408e76:	c3                   	ret
408e77:	6a 00                	push   $0x0
408e79:	e8 98 f9 ff ff       	call   0x408816
408e7e:	85 c0                	test   %eax,%eax
408e80:	74 0f                	je     0x408e91
408e82:	81 78 04 00 00 06 00 	cmpl   $0x60000,0x4(%eax)
408e89:	75 06                	jne    0x408e91
408e8b:	8b 40 0c             	mov    0xc(%eax),%eax
408e8e:	d9 00                	flds   (%eax)
408e90:	c3                   	ret
408e91:	d9 05 98 1a 40 00    	flds   0x401a98
408e97:	c3                   	ret
408e98:	6a 00                	push   $0x0
408e9a:	e8 77 f9 ff ff       	call   0x408816
408e9f:	85 c0                	test   %eax,%eax
408ea1:	74 0f                	je     0x408eb2
408ea3:	81 78 04 00 00 07 00 	cmpl   $0x70000,0x4(%eax)
408eaa:	75 06                	jne    0x408eb2
408eac:	8b 40 0c             	mov    0xc(%eax),%eax
408eaf:	dd 00                	fldl   (%eax)
408eb1:	c3                   	ret
408eb2:	dd 05 a0 1a 40 00    	fldl   0x401aa0
408eb8:	c3                   	ret
408eb9:	8b ff                	mov    %edi,%edi
408ebb:	55                   	push   %ebp
408ebc:	8b ec                	mov    %esp,%ebp
408ebe:	83 ec 0c             	sub    $0xc,%esp
408ec1:	33 c0                	xor    %eax,%eax
408ec3:	56                   	push   %esi
408ec4:	57                   	push   %edi
408ec5:	8b 7d 08             	mov    0x8(%ebp),%edi
408ec8:	6a 00                	push   $0x0
408eca:	ab                   	stos   %eax,%es:(%edi)
408ecb:	ab                   	stos   %eax,%es:(%edi)
408ecc:	ab                   	stos   %eax,%es:(%edi)
408ecd:	ab                   	stos   %eax,%es:(%edi)
408ece:	e8 43 f9 ff ff       	call   0x408816
408ed3:	8b c8                	mov    %eax,%ecx
408ed5:	85 c9                	test   %ecx,%ecx
408ed7:	74 3e                	je     0x408f17
408ed9:	ba 00 00 0a 00       	mov    $0xa0000,%edx
408ede:	39 51 04             	cmp    %edx,0x4(%ecx)
408ee1:	74 09                	je     0x408eec
408ee3:	81 79 04 00 00 0b 00 	cmpl   $0xb0000,0x4(%ecx)
408eea:	75 2b                	jne    0x408f17
408eec:	8b 41 0c             	mov    0xc(%ecx),%eax
408eef:	39 51 04             	cmp    %edx,0x4(%ecx)
408ef2:	75 0b                	jne    0x408eff
408ef4:	8b 7d 08             	mov    0x8(%ebp),%edi
408ef7:	8b f0                	mov    %eax,%esi
408ef9:	a5                   	movsl  %ds:(%esi),%es:(%edi)
408efa:	a5                   	movsl  %ds:(%esi),%es:(%edi)
408efb:	a5                   	movsl  %ds:(%esi),%es:(%edi)
408efc:	a5                   	movsl  %ds:(%esi),%es:(%edi)
408efd:	eb 18                	jmp    0x408f17
408eff:	8b 08                	mov    (%eax),%ecx
408f01:	ff 75 08             	push   0x8(%ebp)
408f04:	89 4d f4             	mov    %ecx,-0xc(%ebp)
408f07:	8b 48 04             	mov    0x4(%eax),%ecx
408f0a:	8d 45 f4             	lea    -0xc(%ebp),%eax
408f0d:	50                   	push   %eax
408f0e:	89 4d f8             	mov    %ecx,-0x8(%ebp)
408f11:	ff 15 d0 20 41 00    	call   *0x4120d0
408f17:	8b 45 08             	mov    0x8(%ebp),%eax
408f1a:	5f                   	pop    %edi
408f1b:	5e                   	pop    %esi
408f1c:	c9                   	leave
408f1d:	c2 04 00             	ret    $0x4
408f20:	8b ff                	mov    %edi,%edi
408f22:	55                   	push   %ebp
408f23:	8b ec                	mov    %esp,%ebp
408f25:	81 ec 0c 02 00 00    	sub    $0x20c,%esp
408f2b:	a1 44 10 41 00       	mov    0x411044,%eax
408f30:	33 c5                	xor    %ebp,%eax
408f32:	89 45 fc             	mov    %eax,-0x4(%ebp)
408f35:	53                   	push   %ebx
408f36:	56                   	push   %esi
408f37:	8b 75 08             	mov    0x8(%ebp),%esi
408f3a:	8d 85 f8 fd ff ff    	lea    -0x208(%ebp),%eax
408f40:	57                   	push   %edi
408f41:	68 fe 01 00 00       	push   $0x1fe
408f46:	6a 00                	push   $0x0
408f48:	50                   	push   %eax
408f49:	89 95 f4 fd ff ff    	mov    %edx,-0x20c(%ebp)
408f4f:	8b f9                	mov    %ecx,%edi
408f51:	e8 6e 64 00 00       	call   0x40f3c4
408f56:	8b 5d 0c             	mov    0xc(%ebp),%ebx
408f59:	83 c4 0c             	add    $0xc,%esp
408f5c:	85 db                	test   %ebx,%ebx
408f5e:	0f 84 c3 00 00 00    	je     0x409027
408f64:	8b 95 f4 fd ff ff    	mov    -0x20c(%ebp),%edx
408f6a:	8b cf                	mov    %edi,%ecx
408f6c:	6a 00                	push   $0x0
408f6e:	e8 a3 f8 ff ff       	call   0x408816
408f73:	8b f8                	mov    %eax,%edi
408f75:	85 ff                	test   %edi,%edi
408f77:	0f 84 aa 00 00 00    	je     0x409027
408f7d:	53                   	push   %ebx
408f7e:	ba 30 12 40 00       	mov    $0x401230,%edx
408f83:	8b ce                	mov    %esi,%ecx
408f85:	e8 6c 14 00 00       	call   0x40a3f6
408f8a:	8b 4f 04             	mov    0x4(%edi),%ecx
408f8d:	81 f9 00 00 02 00    	cmp    $0x20000,%ecx
408f93:	74 7e                	je     0x409013
408f95:	81 f9 00 00 03 00    	cmp    $0x30000,%ecx
408f9b:	74 6a                	je     0x409007
408f9d:	81 f9 00 00 04 00    	cmp    $0x40000,%ecx
408fa3:	74 42                	je     0x408fe7
408fa5:	81 f9 00 00 06 00    	cmp    $0x60000,%ecx
408fab:	74 33                	je     0x408fe0
408fad:	81 f9 00 00 07 00    	cmp    $0x70000,%ecx
408fb3:	75 69                	jne    0x40901e
408fb5:	8b 47 0c             	mov    0xc(%edi),%eax
408fb8:	dd 00                	fldl   (%eax)
408fba:	51                   	push   %ecx
408fbb:	51                   	push   %ecx
408fbc:	dd 1c 24             	fstpl  (%esp)
408fbf:	68 4c 18 40 00       	push   $0x40184c
408fc4:	8d 85 f8 fd ff ff    	lea    -0x208(%ebp),%eax
408fca:	68 fe 00 00 00       	push   $0xfe
408fcf:	50                   	push   %eax
408fd0:	e8 4f 04 00 00       	call   0x409424
408fd5:	83 c4 14             	add    $0x14,%esp
408fd8:	8d 95 f8 fd ff ff    	lea    -0x208(%ebp),%edx
408fde:	eb 36                	jmp    0x409016
408fe0:	8b 47 0c             	mov    0xc(%edi),%eax
408fe3:	d9 00                	flds   (%eax)
408fe5:	eb d3                	jmp    0x408fba
408fe7:	8b 47 0c             	mov    0xc(%edi),%eax
408fea:	ff 30                	push   (%eax)
408fec:	68 44 18 40 00       	push   $0x401844
408ff1:	8d 85 f8 fd ff ff    	lea    -0x208(%ebp),%eax
408ff7:	68 fe 00 00 00       	push   $0xfe
408ffc:	50                   	push   %eax
408ffd:	e8 22 04 00 00       	call   0x409424
409002:	83 c4 10             	add    $0x10,%esp
409005:	eb d1                	jmp    0x408fd8
409007:	8b 47 0c             	mov    0xc(%edi),%eax
40900a:	ff 30                	push   (%eax)
40900c:	68 3c 18 40 00       	push   $0x40183c
409011:	eb de                	jmp    0x408ff1
409013:	8b 57 0c             	mov    0xc(%edi),%edx
409016:	53                   	push   %ebx
409017:	8b ce                	mov    %esi,%ecx
409019:	e8 d8 13 00 00       	call   0x40a3f6
40901e:	56                   	push   %esi
40901f:	ff 15 d4 20 41 00    	call   *0x4120d4
409025:	eb 02                	jmp    0x409029
409027:	33 c0                	xor    %eax,%eax
409029:	8b 4d fc             	mov    -0x4(%ebp),%ecx
40902c:	5f                   	pop    %edi
40902d:	5e                   	pop    %esi
40902e:	33 cd                	xor    %ebp,%ecx
409030:	5b                   	pop    %ebx
409031:	e8 9a 5c 00 00       	call   0x40ecd0
409036:	c9                   	leave
409037:	c2 08 00             	ret    $0x8
40903a:	8b ff                	mov    %edi,%edi
40903c:	55                   	push   %ebp
40903d:	8b ec                	mov    %esp,%ebp
40903f:	8b 0d b0 14 41 00    	mov    0x4114b0,%ecx
409045:	6a 00                	push   $0x0
409047:	6a 03                	push   $0x3
409049:	5a                   	pop    %edx
40904a:	e8 c7 f7 ff ff       	call   0x408816
40904f:	85 c0                	test   %eax,%eax
409051:	74 16                	je     0x409069
409053:	81 78 04 00 00 08 00 	cmpl   $0x80000,0x4(%eax)
40905a:	75 0d                	jne    0x409069
40905c:	8b 55 08             	mov    0x8(%ebp),%edx
40905f:	8b 48 0c             	mov    0xc(%eax),%ecx
409062:	e8 84 fd ff ff       	call   0x408deb
409067:	eb 02                	jmp    0x40906b
409069:	33 c0                	xor    %eax,%eax
40906b:	5d                   	pop    %ebp
40906c:	c2 04 00             	ret    $0x4
40906f:	8b ff                	mov    %edi,%edi
409071:	55                   	push   %ebp
409072:	8b ec                	mov    %esp,%ebp
409074:	6a 00                	push   $0x0
409076:	e8 9b f7 ff ff       	call   0x408816
40907b:	85 c0                	test   %eax,%eax
40907d:	74 16                	je     0x409095
40907f:	81 78 04 00 00 08 00 	cmpl   $0x80000,0x4(%eax)
409086:	75 0d                	jne    0x409095
409088:	8b 55 08             	mov    0x8(%ebp),%edx
40908b:	8b 48 0c             	mov    0xc(%eax),%ecx
40908e:	e8 7c fd ff ff       	call   0x408e0f
409093:	eb 02                	jmp    0x409097
409095:	33 c0                	xor    %eax,%eax
409097:	5d                   	pop    %ebp
409098:	c2 04 00             	ret    $0x4
40909b:	6a 00                	push   $0x0
40909d:	e8 74 f7 ff ff       	call   0x408816
4090a2:	85 c0                	test   %eax,%eax
4090a4:	74 15                	je     0x4090bb
4090a6:	81 78 04 00 00 08 00 	cmpl   $0x80000,0x4(%eax)
4090ad:	75 0c                	jne    0x4090bb
4090af:	8b 48 0c             	mov    0xc(%eax),%ecx
4090b2:	33 d2                	xor    %edx,%edx
4090b4:	e8 98 fd ff ff       	call   0x408e51
4090b9:	eb 02                	jmp    0x4090bd
4090bb:	33 c0                	xor    %eax,%eax
4090bd:	c2 04 00             	ret    $0x4
4090c0:	8b ff                	mov    %edi,%edi
4090c2:	56                   	push   %esi
4090c3:	33 f6                	xor    %esi,%esi
4090c5:	56                   	push   %esi
4090c6:	e8 4b f7 ff ff       	call   0x408816
4090cb:	85 c0                	test   %eax,%eax
4090cd:	74 2b                	je     0x4090fa
4090cf:	81 78 04 00 00 08 00 	cmpl   $0x80000,0x4(%eax)
4090d6:	75 22                	jne    0x4090fa
4090d8:	8b 48 0c             	mov    0xc(%eax),%ecx
4090db:	56                   	push   %esi
4090dc:	6a 05                	push   $0x5
4090de:	5a                   	pop    %edx
4090df:	e8 32 f7 ff ff       	call   0x408816
4090e4:	85 c0                	test   %eax,%eax
4090e6:	74 0e                	je     0x4090f6
4090e8:	81 78 04 00 00 05 00 	cmpl   $0x50000,0x4(%eax)
4090ef:	75 05                	jne    0x4090f6
4090f1:	8b 40 0c             	mov    0xc(%eax),%eax
4090f4:	8b 30                	mov    (%eax),%esi
4090f6:	8b c6                	mov    %esi,%eax
4090f8:	eb 02                	jmp    0x4090fc
4090fa:	33 c0                	xor    %eax,%eax
4090fc:	5e                   	pop    %esi
4090fd:	c2 04 00             	ret    $0x4
409100:	8b ff                	mov    %edi,%edi
409102:	55                   	push   %ebp
409103:	8b ec                	mov    %esp,%ebp
409105:	51                   	push   %ecx
409106:	53                   	push   %ebx
409107:	56                   	push   %esi
409108:	57                   	push   %edi
409109:	6a 00                	push   $0x0
40910b:	e8 06 f7 ff ff       	call   0x408816
409110:	8b f8                	mov    %eax,%edi
409112:	85 ff                	test   %edi,%edi
409114:	74 6f                	je     0x409185
409116:	be 00 00 02 00       	mov    $0x20000,%esi
40911b:	39 77 04             	cmp    %esi,0x4(%edi)
40911e:	74 06                	je     0x409126
409120:	83 7f 04 00          	cmpl   $0x0,0x4(%edi)
409124:	75 5f                	jne    0x409185
409126:	ff 75 08             	push   0x8(%ebp)
409129:	ff 15 d4 20 41 00    	call   *0x4120d4
40912f:	8d 58 01             	lea    0x1(%eax),%ebx
409132:	89 5d fc             	mov    %ebx,-0x4(%ebp)
409135:	03 db                	add    %ebx,%ebx
409137:	83 7f 04 00          	cmpl   $0x0,0x4(%edi)
40913b:	75 13                	jne    0x409150
40913d:	8b cb                	mov    %ebx,%ecx
40913f:	e8 26 1b 00 00       	call   0x40ac6a
409144:	89 47 0c             	mov    %eax,0xc(%edi)
409147:	85 c0                	test   %eax,%eax
409149:	74 3a                	je     0x409185
40914b:	89 77 04             	mov    %esi,0x4(%edi)
40914e:	eb 1f                	jmp    0x40916f
409150:	39 5f 08             	cmp    %ebx,0x8(%edi)
409153:	73 1d                	jae    0x409172
409155:	8d 77 0c             	lea    0xc(%edi),%esi
409158:	8b ce                	mov    %esi,%ecx
40915a:	e8 67 1a 00 00       	call   0x40abc6
40915f:	83 26 00             	andl   $0x0,(%esi)
409162:	8b cb                	mov    %ebx,%ecx
409164:	e8 01 1b 00 00       	call   0x40ac6a
409169:	89 06                	mov    %eax,(%esi)
40916b:	85 c0                	test   %eax,%eax
40916d:	74 16                	je     0x409185
40916f:	89 5f 08             	mov    %ebx,0x8(%edi)
409172:	ff 75 fc             	push   -0x4(%ebp)
409175:	8b 55 08             	mov    0x8(%ebp),%edx
409178:	8b 4f 0c             	mov    0xc(%edi),%ecx
40917b:	e8 76 12 00 00       	call   0x40a3f6
409180:	33 c0                	xor    %eax,%eax
409182:	40                   	inc    %eax
409183:	eb 02                	jmp    0x409187
409185:	33 c0                	xor    %eax,%eax
409187:	5f                   	pop    %edi
409188:	5e                   	pop    %esi
409189:	5b                   	pop    %ebx
40918a:	c9                   	leave
40918b:	c2 08 00             	ret    $0x8
40918e:	8b ff                	mov    %edi,%edi
409190:	55                   	push   %ebp
409191:	8b ec                	mov    %esp,%ebp
409193:	56                   	push   %esi
409194:	57                   	push   %edi
409195:	6a 00                	push   $0x0
409197:	e8 7a f6 ff ff       	call   0x408816
40919c:	8b f0                	mov    %eax,%esi
40919e:	85 f6                	test   %esi,%esi
4091a0:	74 36                	je     0x4091d8
4091a2:	bf 00 00 04 00       	mov    $0x40000,%edi
4091a7:	39 7e 04             	cmp    %edi,0x4(%esi)
4091aa:	74 1f                	je     0x4091cb
4091ac:	83 7e 04 00          	cmpl   $0x0,0x4(%esi)
4091b0:	75 26                	jne    0x4091d8
4091b2:	6a 04                	push   $0x4
4091b4:	59                   	pop    %ecx
4091b5:	e8 b0 1a 00 00       	call   0x40ac6a
4091ba:	89 46 0c             	mov    %eax,0xc(%esi)
4091bd:	85 c0                	test   %eax,%eax
4091bf:	74 17                	je     0x4091d8
4091c1:	89 7e 04             	mov    %edi,0x4(%esi)
4091c4:	c7 46 08 04 00 00 00 	movl   $0x4,0x8(%esi)
4091cb:	8b 4e 0c             	mov    0xc(%esi),%ecx
4091ce:	8b 45 08             	mov    0x8(%ebp),%eax
4091d1:	89 01                	mov    %eax,(%ecx)
4091d3:	33 c0                	xor    %eax,%eax
4091d5:	40                   	inc    %eax
4091d6:	eb 02                	jmp    0x4091da
4091d8:	33 c0                	xor    %eax,%eax