40a97b:	ff 15 88 10 40 00    	call   *0x401088
40a981:	dd 05 d8 11 40 00    	fldl   0x4011d8
40a987:	52                   	push   %edx
40a988:	50                   	push   %eax
40a989:	ff 15 f4 10 40 00    	call   *0x4010f4
40a98f:	85 c0                	test   %eax,%eax
40a991:	0f 84 8c 00 00 00    	je     0x40aa23
40a997:	a1 38 03 41 00       	mov    0x410338,%eax
40a99c:	85 c0                	test   %eax,%eax
40a99e:	75 10                	jne    0x40a9b0
40a9a0:	68 38 03 41 00       	push   $0x410338
40a9a5:	68 a8 7c 40 00       	push   $0x407ca8
40a9aa:	ff 15 2c 11 40 00    	call   *0x40112c
40a9b0:	8b 35 38 03 41 00    	mov    0x410338,%esi
40a9b6:	8b 16                	mov    (%esi),%edx
40a9b8:	8d 45 e0             	lea    -0x20(%ebp),%eax
40a9bb:	50                   	push   %eax
40a9bc:	56                   	push   %esi
40a9bd:	ff 52 1c             	call   *0x1c(%edx)
40a9c0:	db e2                	fnclex
40a9c2:	85 c0                	test   %eax,%eax
40a9c4:	7d 0f                	jge    0x40a9d5
40a9c6:	6a 1c                	push   $0x1c
40a9c8:	68 98 7c 40 00       	push   $0x407c98
40a9cd:	56                   	push   %esi
40a9ce:	50                   	push   %eax
40a9cf:	ff 15 48 10 40 00    	call   *0x401048
40a9d5:	8b 45 e0             	mov    -0x20(%ebp),%eax
40a9d8:	8b 38                	mov    (%eax),%edi
40a9da:	83 ec 10             	sub    $0x10,%esp
40a9dd:	8b dc                	mov    %esp,%ebx
40a9df:	ba 0a 00 00 00       	mov    $0xa,%edx
40a9e4:	89 13                	mov    %edx,(%ebx)
40a9e6:	8b 55 d4             	mov    -0x2c(%ebp),%edx
40a9e9:	89 53 04             	mov    %edx,0x4(%ebx)
40a9ec:	b9 04 00 02 80       	mov    $0x80020004,%ecx
40a9f1:	89 4b 08             	mov    %ecx,0x8(%ebx)
40a9f4:	8b 4d dc             	mov    -0x24(%ebp),%ecx
40a9f7:	68 28 7d 40 00       	push   $0x407d28
40a9fc:	50                   	push   %eax
40a9fd:	8b f0                	mov    %eax,%esi
40a9ff:	89 4b 0c             	mov    %ecx,0xc(%ebx)
40aa02:	ff 57 60             	call   *0x60(%edi)
40aa05:	db e2                	fnclex
40aa07:	85 c0                	test   %eax,%eax
40aa09:	7d 0f                	jge    0x40aa1a
40aa0b:	6a 60                	push   $0x60
40aa0d:	68 b8 7c 40 00       	push   $0x407cb8
40aa12:	56                   	push   %esi
40aa13:	50                   	push   %eax
40aa14:	ff 15 48 10 40 00    	call   *0x401048
40aa1a:	8d 4d e0             	lea    -0x20(%ebp),%ecx
40aa1d:	ff 15 ac 11 40 00    	call   *0x4011ac
40aa23:	68 78 77 40 00       	push   $0x407778
40aa28:	ff 15 88 10 40 00    	call   *0x401088
40aa2e:	dd 05 d8 11 40 00    	fldl   0x4011d8
40aa34:	52                   	push   %edx
40aa35:	50                   	push   %eax
40aa36:	ff 15 f4 10 40 00    	call   *0x4010f4
40aa3c:	85 c0                	test   %eax,%eax
40aa3e:	0f 84 8c 00 00 00    	je     0x40aad0
40aa44:	a1 38 03 41 00       	mov    0x410338,%eax
40aa49:	85 c0                	test   %eax,%eax
40aa4b:	75 10                	jne    0x40aa5d
40aa4d:	68 38 03 41 00       	push   $0x410338
40aa52:	68 a8 7c 40 00       	push   $0x407ca8
40aa57:	ff 15 2c 11 40 00    	call   *0x40112c
40aa5d:	8b 35 38 03 41 00    	mov    0x410338,%esi
40aa63:	8b 16                	mov    (%esi),%edx
40aa65:	8d 45 e0             	lea    -0x20(%ebp),%eax
40aa68:	50                   	push   %eax
40aa69:	56                   	push   %esi
40aa6a:	ff 52 1c             	call   *0x1c(%edx)
40aa6d:	db e2                	fnclex
40aa6f:	85 c0                	test   %eax,%eax
40aa71:	7d 0f                	jge    0x40aa82
40aa73:	6a 1c                	push   $0x1c
40aa75:	68 98 7c 40 00       	push   $0x407c98
40aa7a:	56                   	push   %esi
40aa7b:	50                   	push   %eax
40aa7c:	ff 15 48 10 40 00    	call   *0x401048
40aa82:	8b 45 e0             	mov    -0x20(%ebp),%eax
40aa85:	8b 38                	mov    (%eax),%edi
40aa87:	83 ec 10             	sub    $0x10,%esp
40aa8a:	8b dc                	mov    %esp,%ebx
40aa8c:	ba 0a 00 00 00       	mov    $0xa,%edx
40aa91:	89 13                	mov    %edx,(%ebx)
40aa93:	8b 55 d4             	mov    -0x2c(%ebp),%edx
40aa96:	89 53 04             	mov    %edx,0x4(%ebx)
40aa99:	b9 04 00 02 80       	mov    $0x80020004,%ecx
40aa9e:	89 4b 08             	mov    %ecx,0x8(%ebx)
40aaa1:	8b 4d dc             	mov    -0x24(%ebp),%ecx
40aaa4:	68 38 7d 40 00       	push   $0x407d38
40aaa9:	50                   	push   %eax
40aaaa:	8b f0                	mov    %eax,%esi
40aaac:	89 4b 0c             	mov    %ecx,0xc(%ebx)
40aaaf:	ff 57 60             	call   *0x60(%edi)
40aab2:	db e2                	fnclex
40aab4:	85 c0                	test   %eax,%eax
40aab6:	7d 0f                	jge    0x40aac7
40aab8:	6a 60                	push   $0x60
40aaba:	68 b8 7c 40 00       	push   $0x407cb8
40aabf:	56                   	push   %esi
40aac0:	50                   	push   %eax
40aac1:	ff 15 48 10 40 00    	call   *0x401048
40aac7:	8d 4d e0             	lea    -0x20(%ebp),%ecx
40aaca:	ff 15 ac 11 40 00    	call   *0x4011ac
40aad0:	68 78 77 40 00       	push   $0x407778
40aad5:	ff 15 88 10 40 00    	call   *0x401088
40aadb:	dd 05 d8 11 40 00    	fldl   0x4011d8
40aae1:	52                   	push   %edx
40aae2:	50                   	push   %eax
40aae3:	ff 15 f4 10 40 00    	call   *0x4010f4
40aae9:	85 c0                	test   %eax,%eax
40aaeb:	0f 84 8c 00 00 00    	je     0x40ab7d
40aaf1:	a1 38 03 41 00       	mov    0x410338,%eax
40aaf6:	85 c0                	test   %eax,%eax
40aaf8:	75 10                	jne    0x40ab0a
40aafa:	68 38 03 41 00       	push   $0x410338
40aaff:	68 a8 7c 40 00       	push   $0x407ca8
40ab04:	ff 15 2c 11 40 00    	call   *0x40112c
40ab0a:	8b 35 38 03 41 00    	mov    0x410338,%esi
40ab10:	8b 16                	mov    (%esi),%edx
40ab12:	8d 45 e0             	lea    -0x20(%ebp),%eax
40ab15:	50                   	push   %eax
40ab16:	56                   	push   %esi
40ab17:	ff 52 1c             	call   *0x1c(%edx)
40ab1a:	db e2                	fnclex
40ab1c:	85 c0                	test   %eax,%eax
40ab1e:	7d 0f                	jge    0x40ab2f
40ab20:	6a 1c                	push   $0x1c
40ab22:	68 98 7c 40 00       	push   $0x407c98
40ab27:	56                   	push   %esi
40ab28:	50                   	push   %eax
40ab29:	ff 15 48 10 40 00    	call   *0x401048
40ab2f:	8b 45 e0             	mov    -0x20(%ebp),%eax
40ab32:	8b 38                	mov    (%eax),%edi
40ab34:	83 ec 10             	sub    $0x10,%esp
40ab37:	8b dc                	mov    %esp,%ebx
40ab39:	ba 0a 00 00 00       	mov    $0xa,%edx
40ab3e:	89 13                	mov    %edx,(%ebx)
40ab40:	8b 55 d4             	mov    -0x2c(%ebp),%edx
40ab43:	89 53 04             	mov    %edx,0x4(%ebx)
40ab46:	b9 04 00 02 80       	mov    $0x80020004,%ecx
40ab4b:	89 4b 08             	mov    %ecx,0x8(%ebx)
40ab4e:	8b 4d dc             	mov    -0x24(%ebp),%ecx
40ab51:	68 58 7d 40 00       	push   $0x407d58
40ab56:	50                   	push   %eax
40ab57:	8b f0                	mov    %eax,%esi
40ab59:	89 4b 0c             	mov    %ecx,0xc(%ebx)
40ab5c:	ff 57 60             	call   *0x60(%edi)
40ab5f:	db e2                	fnclex
40ab61:	85 c0                	test   %eax,%eax
40ab63:	7d 0f                	jge    0x40ab74
40ab65:	6a 60                	push   $0x60
40ab67:	68 b8 7c 40 00       	push   $0x407cb8
40ab6c:	56                   	push   %esi
40ab6d:	50                   	push   %eax
40ab6e:	ff 15 48 10 40 00    	call   *0x401048
40ab74:	8d 4d e0             	lea    -0x20(%ebp),%ecx
40ab77:	ff 15 ac 11 40 00    	call   *0x4011ac
40ab7d:	68 78 77 40 00       	push   $0x407778
40ab82:	ff 15 88 10 40 00    	call   *0x401088
40ab88:	dd 05 d8 11 40 00    	fldl   0x4011d8
40ab8e:	52                   	push   %edx
40ab8f:	50                   	push   %eax
40ab90:	ff 15 f4 10 40 00    	call   *0x4010f4
40ab96:	85 c0                	test   %eax,%eax
40ab98:	0f 84 8c 00 00 00    	je     0x40ac2a
40ab9e:	a1 38 03 41 00       	mov    0x410338,%eax
40aba3:	85 c0                	test   %eax,%eax
40aba5:	75 10                	jne    0x40abb7
40aba7:	68 38 03 41 00       	push   $0x410338
40abac:	68 a8 7c 40 00       	push   $0x407ca8
40abb1:	ff 15 2c 11 40 00    	call   *0x40112c
40abb7:	8b 35 38 03 41 00    	mov    0x410338,%esi
40abbd:	8b 16                	mov    (%esi),%edx
40abbf:	8d 45 e0             	lea    -0x20(%ebp),%eax
40abc2:	50                   	push   %eax
40abc3:	56                   	push   %esi
40abc4:	ff 52 1c             	call   *0x1c(%edx)
40abc7:	db e2                	fnclex
40abc9:	85 c0                	test   %eax,%eax
40abcb:	7d 0f                	jge    0x40abdc
40abcd:	6a 1c                	push   $0x1c
40abcf:	68 98 7c 40 00       	push   $0x407c98
40abd4:	56                   	push   %esi
40abd5:	50                   	push   %eax
40abd6:	ff 15 48 10 40 00    	call   *0x401048
40abdc:	8b 45 e0             	mov    -0x20(%ebp),%eax
40abdf:	8b 38                	mov    (%eax),%edi
40abe1:	83 ec 10             	sub    $0x10,%esp
40abe4:	8b dc                	mov    %esp,%ebx
40abe6:	ba 0a 00 00 00       	mov    $0xa,%edx
40abeb:	89 13                	mov    %edx,(%ebx)
40abed:	8b 55 d4             	mov    -0x2c(%ebp),%edx
40abf0:	89 53 04             	mov    %edx,0x4(%ebx)
40abf3:	b9 04 00 02 80       	mov    $0x80020004,%ecx
40abf8:	89 4b 08             	mov    %ecx,0x8(%ebx)
40abfb:	8b 4d dc             	mov    -0x24(%ebp),%ecx
40abfe:	68 6c 7d 40 00       	push   $0x407d6c
40ac03:	50                   	push   %eax
40ac04:	8b f0                	mov    %eax,%esi
40ac06:	89 4b 0c             	mov    %ecx,0xc(%ebx)
40ac09:	ff 57 60             	call   *0x60(%edi)
40ac0c:	db e2                	fnclex
40ac0e:	85 c0                	test   %eax,%eax
40ac10:	7d 0f                	jge    0x40ac21
40ac12:	6a 60                	push   $0x60
40ac14:	68 b8 7c 40 00       	push   $0x407cb8
40ac19:	56                   	push   %esi
40ac1a:	50                   	push   %eax
40ac1b:	ff 15 48 10 40 00    	call   *0x401048
40ac21:	8d 4d e0             	lea    -0x20(%ebp),%ecx
40ac24:	ff 15 ac 11 40 00    	call   *0x4011ac
40ac2a:	68 78 77 40 00       	push   $0x407778
40ac2f:	ff 15 88 10 40 00    	call   *0x401088
40ac35:	dd 05 d8 11 40 00    	fldl   0x4011d8
40ac3b:	52                   	push   %edx
40ac3c:	50                   	push   %eax
40ac3d:	ff 15 f4 10 40 00    	call   *0x4010f4
40ac43:	85 c0                	test   %eax,%eax
40ac45:	0f 84 8c 00 00 00    	je     0x40acd7
40ac4b:	a1 38 03 41 00       	mov    0x410338,%eax
40ac50:	85 c0                	test   %eax,%eax
40ac52:	75 10                	jne    0x40ac64
40ac54:	68 38 03 41 00       	push   $0x410338
40ac59:	68 a8 7c 40 00       	push   $0x407ca8
40ac5e:	ff 15 2c 11 40 00    	call   *0x40112c
40ac64:	8b 35 38 03 41 00    	mov    0x410338,%esi
40ac6a:	8b 16                	mov    (%esi),%edx
40ac6c:	8d 45 e0             	lea    -0x20(%ebp),%eax
40ac6f:	50                   	push   %eax
40ac70:	56                   	push   %esi
40ac71:	ff 52 1c             	call   *0x1c(%edx)
40ac74:	db e2                	fnclex
40ac76:	85 c0                	test   %eax,%eax
40ac78:	7d 0f                	jge    0x40ac89
40ac7a:	6a 1c                	push   $0x1c
40ac7c:	68 98 7c 40 00       	push   $0x407c98
40ac81:	56                   	push   %esi
40ac82:	50                   	push   %eax
40ac83:	ff 15 48 10 40 00    	call   *0x401048
40ac89:	8b 45 e0             	mov    -0x20(%ebp),%eax
40ac8c:	8b 38                	mov    (%eax),%edi
40ac8e:	83 ec 10             	sub    $0x10,%esp
40ac91:	8b dc                	mov    %esp,%ebx
40ac93:	ba 0a 00 00 00       	mov    $0xa,%edx
40ac98:	89 13                	mov    %edx,(%ebx)
40ac9a:	8b 55 d4             	mov    -0x2c(%ebp),%edx
40ac9d:	89 53 04             	mov    %edx,0x4(%ebx)
40aca0:	b9 04 00 02 80       	mov    $0x80020004,%ecx
40aca5:	89 4b 08             	mov    %ecx,0x8(%ebx)
40aca8:	8b 4d dc             	mov    -0x24(%ebp),%ecx
40acab:	68 80 7d 40 00       	push   $0x407d80
40acb0:	50                   	push   %eax
40acb1:	8b f0                	mov    %eax,%esi
40acb3:	89 4b 0c             	mov    %ecx,0xc(%ebx)
40acb6:	ff 57 60             	call   *0x60(%edi)
40acb9:	db e2                	fnclex
40acbb:	85 c0                	test   %eax,%eax
40acbd:	7d 0f                	jge    0x40acce
40acbf:	6a 60                	push   $0x60
40acc1:	68 b8 7c 40 00       	push   $0x407cb8
40acc6:	56                   	push   %esi
40acc7:	50                   	push   %eax
40acc8:	ff 15 48 10 40 00    	call   *0x401048
40acce:	8d 4d e0             	lea    -0x20(%ebp),%ecx
40acd1:	ff 15 ac 11 40 00    	call   *0x4011ac
40acd7:	68 78 77 40 00       	push   $0x407778
40acdc:	ff 15 88 10 40 00    	call   *0x401088
40ace2:	dd 05 d8 11 40 00    	fldl   0x4011d8
40ace8:	52                   	push   %edx
40ace9:	50                   	push   %eax
40acea:	ff 15 f4 10 40 00    	call   *0x4010f4
40acf0:	85 c0                	test   %eax,%eax
40acf2:	0f 84 8c 00 00 00    	je     0x40ad84
40acf8:	a1 38 03 41 00       	mov    0x410338,%eax
40acfd:	85 c0                	test   %eax,%eax
40acff:	75 10                	jne    0x40ad11
40ad01:	68 38 03 41 00       	push   $0x410338
40ad06:	68 a8 7c 40 00       	push   $0x407ca8
40ad0b:	ff 15 2c 11 40 00    	call   *0x40112c
40ad11:	8b 35 38 03 41 00    	mov    0x410338,%esi
40ad17:	8b 16                	mov    (%esi),%edx
40ad19:	8d 45 e0             	lea    -0x20(%ebp),%eax
40ad1c:	50                   	push   %eax
40ad1d:	56                   	push   %esi
40ad1e:	ff 52 1c             	call   *0x1c(%edx)
40ad21:	db e2                	fnclex
40ad23:	85 c0                	test   %eax,%eax
40ad25:	7d 0f                	jge    0x40ad36
40ad27:	6a 1c                	push   $0x1c
40ad29:	68 98 7c 40 00       	push   $0x407c98
40ad2e:	56                   	push   %esi
40ad2f:	50                   	push   %eax
40ad30:	ff 15 48 10 40 00    	call   *0x401048
40ad36:	8b 45 e0             	mov    -0x20(%ebp),%eax
40ad39:	8b 38                	mov    (%eax),%edi
40ad3b:	83 ec 10             	sub    $0x10,%esp
40ad3e:	8b dc                	mov    %esp,%ebx
40ad40:	ba 0a 00 00 00       	mov    $0xa,%edx
40ad45:	89 13                	mov    %edx,(%ebx)
40ad47:	8b 55 d4             	mov    -0x2c(%ebp),%edx
40ad4a:	89 53 04             	mov    %edx,0x4(%ebx)
40ad4d:	b9 04 00 02 80       	mov    $0x80020004,%ecx
40ad52:	89 4b 08             	mov    %ecx,0x8(%ebx)
40ad55:	8b 4d dc             	mov    -0x24(%ebp),%ecx
40ad58:	68 9c 7d 40 00       	push   $0x407d9c
40ad5d:	50                   	push   %eax
40ad5e:	8b f0                	mov    %eax,%esi
40ad60:	89 4b 0c             	mov    %ecx,0xc(%ebx)
40ad63:	ff 57 60             	call   *0x60(%edi)
40ad66:	db e2                	fnclex
40ad68:	85 c0                	test   %eax,%eax
40ad6a:	7d 0f                	jge    0x40ad7b
40ad6c:	6a 60                	push   $0x60
40ad6e:	68 b8 7c 40 00       	push   $0x407cb8
40ad73:	56                   	push   %esi
40ad74:	50                   	push   %eax
40ad75:	ff 15 48 10 40 00    	call   *0x401048
40ad7b:	8d 4d e0             	lea    -0x20(%ebp),%ecx
40ad7e:	ff 15 ac 11 40 00    	call   *0x4011ac
40ad84:	9b                   	fwait
40ad85:	68 a7 ad 40 00       	push   $0x40ada7
40ad8a:	eb 0a                	jmp    0x40ad96
40ad8c:	8d 4d e0             	lea    -0x20(%ebp),%ecx
40ad8f:	ff 15 ac 11 40 00    	call   *0x4011ac
40ad95:	c3                   	ret
40ad96:	8b 35 a8 11 40 00    	mov    0x4011a8,%esi
40ad9c:	8d 4d ec             	lea    -0x14(%ebp),%ecx
40ad9f:	ff d6                	call   *%esi
40ada1:	8d 4d e8             	lea    -0x18(%ebp),%ecx
40ada4:	ff d6                	call   *%esi
40ada6:	c3                   	ret
40ada7:	66 8b 45 e4          	mov    -0x1c(%ebp),%ax
40adab:	8b 55 20             	mov    0x20(%ebp),%edx
40adae:	8b 4d f0             	mov    -0x10(%ebp),%ecx
40adb1:	5f                   	pop    %edi
40adb2:	66 89 02             	mov    %ax,(%edx)
40adb5:	5e                   	pop    %esi
40adb6:	33 c0                	xor    %eax,%eax
40adb8:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
40adbf:	5b                   	pop    %ebx
40adc0:	8b e5                	mov    %ebp,%esp
40adc2:	5d                   	pop    %ebp
40adc3:	c2 1c 00             	ret    $0x1c
40adc6:	90                   	nop
40adc7:	90                   	nop
40adc8:	90                   	nop