40ce46:	56                   	push   %esi
40ce47:	6a 00                	push   $0x0
40ce49:	ff 15 04 21 41 00    	call   *0x412104
40ce4f:	68 68 65 41 00       	push   $0x416568
40ce54:	6a 00                	push   $0x0
40ce56:	68 50 65 41 00       	push   $0x416550
40ce5b:	68 63 cb 40 00       	push   $0x40cb63
40ce60:	6a 00                	push   $0x0
40ce62:	6a 00                	push   $0x0
40ce64:	a3 60 65 41 00       	mov    %eax,0x416560
40ce69:	ff 15 8c 20 41 00    	call   *0x41208c
40ce6f:	a3 64 65 41 00       	mov    %eax,0x416564
40ce74:	85 c0                	test   %eax,%eax
40ce76:	75 34                	jne    0x40ceac
40ce78:	8d 4d f8             	lea    -0x8(%ebp),%ecx
40ce7b:	e8 3d 00 00 00       	call   0x40cebd
40ce80:	8d 4d fc             	lea    -0x4(%ebp),%ecx
40ce83:	e8 35 00 00 00       	call   0x40cebd
40ce88:	8d 4d f4             	lea    -0xc(%ebp),%ecx
40ce8b:	e8 2d 00 00 00       	call   0x40cebd
40ce90:	8d 4d f0             	lea    -0x10(%ebp),%ecx
40ce93:	e8 25 00 00 00       	call   0x40cebd
40ce98:	8d 4d ec             	lea    -0x14(%ebp),%ecx
40ce9b:	e8 1d 00 00 00       	call   0x40cebd
40cea0:	b9 50 65 41 00       	mov    $0x416550,%ecx
40cea5:	e8 10 fe ff ff       	call   0x40ccba
40ceaa:	33 f6                	xor    %esi,%esi
40ceac:	8b 4d 08             	mov    0x8(%ebp),%ecx
40ceaf:	e8 79 8b ff ff       	call   0x405a2d
40ceb4:	5f                   	pop    %edi
40ceb5:	8b c6                	mov    %esi,%eax
40ceb7:	5e                   	pop    %esi
40ceb8:	5b                   	pop    %ebx
40ceb9:	c9                   	leave
40ceba:	c2 04 00             	ret    $0x4
40cebd:	56                   	push   %esi
40cebe:	8b f1                	mov    %ecx,%esi
40cec0:	83 3e 00             	cmpl   $0x0,(%esi)
40cec3:	74 08                	je     0x40cecd
40cec5:	ff 36                	push   (%esi)
40cec7:	ff 15 00 22 41 00    	call   *0x412200
40cecd:	83 26 00             	andl   $0x0,(%esi)
40ced0:	5e                   	pop    %esi
40ced1:	c3                   	ret
40ced2:	0f 28 05 e0 49 41 00 	movaps 0x4149e0,%xmm0
40ced9:	33 c0                	xor    %eax,%eax
40cedb:	a3 58 65 41 00       	mov    %eax,0x416558
40cee0:	a3 5c 65 41 00       	mov    %eax,0x41655c
40cee5:	a3 54 65 41 00       	mov    %eax,0x416554
40ceea:	b8 50 65 41 00       	mov    $0x416550,%eax
40ceef:	c7 05 50 65 41 00 b4 	movl   $0x413bb4,0x416550
40cef6:	3b 41 00
40cef9:	0f 11 05 60 65 41 00 	movups %xmm0,0x416560
40cf00:	c3                   	ret
40cf01:	55                   	push   %ebp
40cf02:	8b ec                	mov    %esp,%ebp
40cf04:	51                   	push   %ecx
40cf05:	83 3d 5c 65 41 00 00 	cmpl   $0x0,0x41655c
40cf0c:	56                   	push   %esi
40cf0d:	75 04                	jne    0x40cf13
40cf0f:	33 f6                	xor    %esi,%esi
40cf11:	eb 2e                	jmp    0x40cf41
40cf13:	51                   	push   %ecx
40cf14:	8d 4d 08             	lea    0x8(%ebp),%ecx
40cf17:	e8 70 60 ff ff       	call   0x402f8c
40cf1c:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
40cf20:	8d 45 fc             	lea    -0x4(%ebp),%eax
40cf23:	8b 75 08             	mov    0x8(%ebp),%esi
40cf26:	8d 4d 08             	lea    0x8(%ebp),%ecx
40cf29:	6a 00                	push   $0x0
40cf2b:	50                   	push   %eax
40cf2c:	e8 88 5f ff ff       	call   0x402eb9
40cf31:	50                   	push   %eax
40cf32:	56                   	push   %esi
40cf33:	ff 35 5c 65 41 00    	push   0x41655c
40cf39:	ff 15 90 20 41 00    	call   *0x412090
40cf3f:	8b f0                	mov    %eax,%esi
40cf41:	8b 4d 08             	mov    0x8(%ebp),%ecx
40cf44:	e8 e4 8a ff ff       	call   0x405a2d
40cf49:	8b c6                	mov    %esi,%eax
40cf4b:	5e                   	pop    %esi
40cf4c:	c9                   	leave
40cf4d:	c2 04 00             	ret    $0x4
40cf50:	cc                   	int3
40cf51:	cc                   	int3
40cf52:	cc                   	int3
40cf53:	55                   	push   %ebp
40cf54:	8b ec                	mov    %esp,%ebp
40cf56:	83 ec 0c             	sub    $0xc,%esp
40cf59:	8d 45 08             	lea    0x8(%ebp),%eax
40cf5c:	56                   	push   %esi
40cf5d:	51                   	push   %ecx
40cf5e:	51                   	push   %ecx
40cf5f:	8b f1                	mov    %ecx,%esi
40cf61:	8b cc                	mov    %esp,%ecx
40cf63:	50                   	push   %eax
40cf64:	e8 b9 62 ff ff       	call   0x403222
40cf69:	8d 4d f4             	lea    -0xc(%ebp),%ecx
40cf6c:	e8 64 77 ff ff       	call   0x4046d5
40cf71:	8b 4e 20             	mov    0x20(%esi),%ecx
40cf74:	50                   	push   %eax
40cf75:	e8 d9 7b ff ff       	call   0x404b53
40cf7a:	8d 4d f4             	lea    -0xc(%ebp),%ecx
40cf7d:	e8 f5 76 ff ff       	call   0x404677
40cf82:	8b 4d 08             	mov    0x8(%ebp),%ecx
40cf85:	e8 a3 8a ff ff       	call   0x405a2d
40cf8a:	5e                   	pop    %esi
40cf8b:	c9                   	leave
40cf8c:	c2 04 00             	ret    $0x4
40cf8f:	55                   	push   %ebp
40cf90:	8b ec                	mov    %esp,%ebp
40cf92:	83 ec 0c             	sub    $0xc,%esp
40cf95:	8d 45 08             	lea    0x8(%ebp),%eax
40cf98:	56                   	push   %esi
40cf99:	51                   	push   %ecx
40cf9a:	51                   	push   %ecx
40cf9b:	8b f1                	mov    %ecx,%esi
40cf9d:	8b cc                	mov    %esp,%ecx
40cf9f:	50                   	push   %eax
40cfa0:	e8 7d 62 ff ff       	call   0x403222
40cfa5:	8d 4d f4             	lea    -0xc(%ebp),%ecx
40cfa8:	e8 28 77 ff ff       	call   0x4046d5
40cfad:	8b 4e 20             	mov    0x20(%esi),%ecx
40cfb0:	50                   	push   %eax
40cfb1:	e8 9d 7b ff ff       	call   0x404b53
40cfb6:	8d 4d f4             	lea    -0xc(%ebp),%ecx
40cfb9:	e8 b9 76 ff ff       	call   0x404677
40cfbe:	8b 4d 08             	mov    0x8(%ebp),%ecx
40cfc1:	e8 67 8a ff ff       	call   0x405a2d
40cfc6:	5e                   	pop    %esi
40cfc7:	c9                   	leave
40cfc8:	c2 04 00             	ret    $0x4
40cfcb:	c7 01 b4 3b 41 00    	movl   $0x413bb4,(%ecx)
40cfd1:	c3                   	ret
40cfd2:	a1 74 65 41 00       	mov    0x416574,%eax
40cfd7:	c3                   	ret
40cfd8:	83 25 74 65 41 00 00 	andl   $0x0,0x416574
40cfdf:	b9 50 65 41 00       	mov    $0x416550,%ecx
40cfe4:	e9 d1 fc ff ff       	jmp    0x40ccba
40cfe9:	55                   	push   %ebp
40cfea:	8b ec                	mov    %esp,%ebp
40cfec:	8b 45 08             	mov    0x8(%ebp),%eax
40cfef:	8d 4d 08             	lea    0x8(%ebp),%ecx
40cff2:	6a 25                	push   $0x25
40cff4:	5a                   	pop    %edx
40cff5:	a3 70 65 41 00       	mov    %eax,0x416570
40cffa:	e8 5c 07 00 00       	call   0x40d75b
40cfff:	68 c0 3b 41 00       	push   $0x413bc0
40d004:	8d 4d 08             	lea    0x8(%ebp),%ecx
40d007:	e8 8b 62 ff ff       	call   0x403297
40d00c:	51                   	push   %ecx
40d00d:	8d 45 08             	lea    0x8(%ebp),%eax
40d010:	8b cc                	mov    %esp,%ecx
40d012:	50                   	push   %eax
40d013:	e8 42 64 ff ff       	call   0x40345a
40d018:	e8 0f fd ff ff       	call   0x40cd2c
40d01d:	8b 4d 08             	mov    0x8(%ebp),%ecx
40d020:	c7 05 74 65 41 00 01 	movl   $0x1,0x416574
40d027:	00 00 00
40d02a:	e8 fe 89 ff ff       	call   0x405a2d
40d02f:	5d                   	pop    %ebp
40d030:	c2 04 00             	ret    $0x4
40d033:	e8 9a fe ff ff       	call   0x40ced2
40d038:	83 25 70 65 41 00 00 	andl   $0x0,0x416570
40d03f:	b8 50 65 41 00       	mov    $0x416550,%eax
40d044:	83 25 74 65 41 00 00 	andl   $0x0,0x416574
40d04b:	c7 05 50 65 41 00 d4 	movl   $0x413bd4,0x416550
40d052:	3b 41 00
40d055:	c3                   	ret
40d056:	55                   	push   %ebp
40d057:	8b ec                	mov    %esp,%ebp
40d059:	8b 55 0c             	mov    0xc(%ebp),%edx
40d05c:	8b 4d 08             	mov    0x8(%ebp),%ecx
40d05f:	e8 78 03 00 00       	call   0x40d3dc
40d064:	33 c0                	xor    %eax,%eax
40d066:	40                   	inc    %eax
40d067:	5d                   	pop    %ebp
40d068:	c2 08 00             	ret    $0x8
40d06b:	83 25 60 6d 41 00 00 	andl   $0x0,0x416d60
40d072:	b8 60 6d 41 00       	mov    $0x416d60,%eax
40d077:	c3                   	ret
40d078:	55                   	push   %ebp
40d079:	8b ec                	mov    %esp,%ebp
40d07b:	56                   	push   %esi
40d07c:	8b 75 08             	mov    0x8(%ebp),%esi
40d07f:	8b ce                	mov    %esi,%ecx
40d081:	57                   	push   %edi
40d082:	66 8b 96 04 01 00 00 	mov    0x104(%esi),%dx
40d089:	e8 b6 02 00 00       	call   0x40d344
40d08e:	8b f8                	mov    %eax,%edi
40d090:	83 ff ff             	cmp    $0xffffffff,%edi
40d093:	74 51                	je     0x40d0e6
40d095:	53                   	push   %ebx
40d096:	33 db                	xor    %ebx,%ebx
40d098:	53                   	push   %ebx
40d099:	6a 0a                	push   $0xa
40d09b:	68 f0 3b 41 00       	push   $0x413bf0
40d0a0:	57                   	push   %edi
40d0a1:	ff 15 dc 22 41 00    	call   *0x4122dc
40d0a7:	85 c0                	test   %eax,%eax
40d0a9:	7e 3a                	jle    0x40d0e5
40d0ab:	89 5d 08             	mov    %ebx,0x8(%ebp)
40d0ae:	53                   	push   %ebx
40d0af:	8b 1d 10 23 41 00    	mov    0x412310,%ebx
40d0b5:	eb 21                	jmp    0x40d0d8
40d0b7:	8b 45 08             	mov    0x8(%ebp),%eax
40d0ba:	89 86 04 01 00 00    	mov    %eax,0x104(%esi)
40d0c0:	33 c0                	xor    %eax,%eax
40d0c2:	50                   	push   %eax
40d0c3:	50                   	push   %eax
40d0c4:	56                   	push   %esi
40d0c5:	68 f5 d0 40 00       	push   $0x40d0f5
40d0ca:	50                   	push   %eax
40d0cb:	50                   	push   %eax
40d0cc:	ff 15 8c 20 41 00    	call   *0x41208c
40d0d2:	83 65 08 00          	andl   $0x0,0x8(%ebp)
40d0d6:	6a 00                	push   $0x0
40d0d8:	6a 04                	push   $0x4
40d0da:	8d 45 08             	lea    0x8(%ebp),%eax
40d0dd:	50                   	push   %eax
40d0de:	57                   	push   %edi
40d0df:	ff d3                	call   *%ebx
40d0e1:	85 c0                	test   %eax,%eax
40d0e3:	7f d2                	jg     0x40d0b7
40d0e5:	5b                   	pop    %ebx
40d0e6:	56                   	push   %esi
40d0e7:	e8 d5 3f ff ff       	call   0x4010c1
40d0ec:	59                   	pop    %ecx
40d0ed:	5f                   	pop    %edi
40d0ee:	33 c0                	xor    %eax,%eax
40d0f0:	5e                   	pop    %esi
40d0f1:	5d                   	pop    %ebp
40d0f2:	c2 04 00             	ret    $0x4
40d0f5:	55                   	push   %ebp
40d0f6:	8b ec                	mov    %esp,%ebp
40d0f8:	83 e4 f8             	and    $0xfffffff8,%esp
40d0fb:	81 ec 1c 01 00 00    	sub    $0x11c,%esp
40d101:	8b 4d 08             	mov    0x8(%ebp),%ecx
40d104:	53                   	push   %ebx
40d105:	56                   	push   %esi
40d106:	33 db                	xor    %ebx,%ebx
40d108:	66 8b 91 04 01 00 00 	mov    0x104(%ecx),%dx
40d10f:	57                   	push   %edi
40d110:	88 5c 24 0f          	mov    %bl,0xf(%esp)
40d114:	88 5c 24 0e          	mov    %bl,0xe(%esp)
40d118:	e8 27 02 00 00       	call   0x40d344
40d11d:	8b f0                	mov    %eax,%esi
40d11f:	83 fe ff             	cmp    $0xffffffff,%esi
40d122:	0f 84 29 01 00 00    	je     0x40d251
40d128:	53                   	push   %ebx
40d129:	8b 1d 10 23 41 00    	mov    0x412310,%ebx
40d12f:	8d 44 24 13          	lea    0x13(%esp),%eax
40d133:	6a 01                	push   $0x1
40d135:	50                   	push   %eax
40d136:	56                   	push   %esi
40d137:	ff d3                	call   *%ebx
40d139:	85 c0                	test   %eax,%eax
40d13b:	0f 8e 10 01 00 00    	jle    0x40d251
40d141:	33 ff                	xor    %edi,%edi
40d143:	8d 44 24 0e          	lea    0xe(%esp),%eax
40d147:	57                   	push   %edi
40d148:	6a 01                	push   $0x1
40d14a:	50                   	push   %eax
40d14b:	56                   	push   %esi
40d14c:	ff d3                	call   *%ebx
40d14e:	85 c0                	test   %eax,%eax
40d150:	0f 8e fb 00 00 00    	jle    0x40d251
40d156:	57                   	push   %edi
40d157:	6a 02                	push   $0x2
40d159:	8d 44 24 18          	lea    0x18(%esp),%eax
40d15d:	50                   	push   %eax
40d15e:	56                   	push   %esi
40d15f:	ff d3                	call   *%ebx
40d161:	85 c0                	test   %eax,%eax
40d163:	0f 8e e8 00 00 00    	jle    0x40d251
40d169:	ff 74 24 10          	push   0x10(%esp)
40d16d:	ff 15 f4 22 41 00    	call   *0x4122f4
40d173:	0f b7 c0             	movzwl %ax,%eax
40d176:	57                   	push   %edi
40d177:	89 44 24 14          	mov    %eax,0x14(%esp)
40d17b:	8d 44 24 18          	lea    0x18(%esp),%eax
40d17f:	6a 04                	push   $0x4
40d181:	50                   	push   %eax
40d182:	56                   	push   %esi
40d183:	ff d3                	call   *%ebx
40d185:	85 c0                	test   %eax,%eax
40d187:	0f 8e c4 00 00 00    	jle    0x40d251
40d18d:	33 c0                	xor    %eax,%eax
40d18f:	8d 7c 24 18          	lea    0x18(%esp),%edi
40d193:	ab                   	stos   %eax,%es:(%edi)
40d194:	68 ff 00 00 00       	push   $0xff
40d199:	6a 00                	push   $0x0
40d19b:	ab                   	stos   %eax,%es:(%edi)
40d19c:	ab                   	stos   %eax,%es:(%edi)
40d19d:	ab                   	stos   %eax,%es:(%edi)
40d19e:	8d 44 24 30          	lea    0x30(%esp),%eax
40d1a2:	50                   	push   %eax
40d1a3:	e8 aa 3e ff ff       	call   0x401052
40d1a8:	8b 4c 24 20          	mov    0x20(%esp),%ecx
40d1ac:	8b c1                	mov    %ecx,%eax
40d1ae:	c1 e8 18             	shr    $0x18,%eax
40d1b1:	50                   	push   %eax
40d1b2:	8b c1                	mov    %ecx,%eax
40d1b4:	c1 e8 10             	shr    $0x10,%eax
40d1b7:	0f b6 c0             	movzbl %al,%eax
40d1ba:	50                   	push   %eax
40d1bb:	8b c1                	mov    %ecx,%eax
40d1bd:	c1 e8 08             	shr    $0x8,%eax
40d1c0:	0f b6 c0             	movzbl %al,%eax
40d1c3:	50                   	push   %eax
40d1c4:	0f b6 c1             	movzbl %cl,%eax
40d1c7:	50                   	push   %eax
40d1c8:	8d 44 24 34          	lea    0x34(%esp),%eax
40d1cc:	68 e0 3b 41 00       	push   $0x413be0
40d1d1:	50                   	push   %eax
40d1d2:	ff 15 a0 22 41 00    	call   *0x4122a0
40d1d8:	83 c4 24             	add    $0x24,%esp
40d1db:	33 ff                	xor    %edi,%edi
40d1dd:	6a 00                	push   $0x0
40d1df:	68 ff 00 00 00       	push   $0xff
40d1e4:	8d 44 24 30          	lea    0x30(%esp),%eax
40d1e8:	50                   	push   %eax
40d1e9:	56                   	push   %esi
40d1ea:	ff d3                	call   *%ebx
40d1ec:	85 c0                	test   %eax,%eax
40d1ee:	7e 61                	jle    0x40d251
40d1f0:	80 7c 3c 28 00       	cmpb   $0x0,0x28(%esp,%edi,1)
40d1f5:	74 0b                	je     0x40d202
40d1f7:	47                   	inc    %edi
40d1f8:	81 ff ff 00 00 00    	cmp    $0xff,%edi
40d1fe:	72 dd                	jb     0x40d1dd
40d200:	eb 4f                	jmp    0x40d251
40d202:	80 7c 24 0e 01       	cmpb   $0x1,0xe(%esp)
40d207:	74 0b                	je     0x40d214
40d209:	b2 5b                	mov    $0x5b,%dl
40d20b:	8b ce                	mov    %esi,%ecx
40d20d:	e8 4a 00 00 00       	call   0x40d25c
40d212:	eb 3d                	jmp    0x40d251
40d214:	8b 54 24 10          	mov    0x10(%esp),%edx
40d218:	8d 4c 24 18          	lea    0x18(%esp),%ecx
40d21c:	e8 23 01 00 00       	call   0x40d344
40d221:	8b f8                	mov    %eax,%edi
40d223:	83 ff ff             	cmp    $0xffffffff,%edi
40d226:	74 29                	je     0x40d251
40d228:	b2 5a                	mov    $0x5a,%dl
40d22a:	8b ce                	mov    %esi,%ecx
40d22c:	e8 2b 00 00 00       	call   0x40d25c
40d231:	85 c0                	test   %eax,%eax
40d233:	7e 1c                	jle    0x40d251
40d235:	eb 0d                	jmp    0x40d244