40e1d1:	b9 10 00 00 00       	mov    $0x10,%ecx
40e1d6:	e8 95 ea ff ff       	call   0x40cc70
40e1db:	83 f8 29             	cmp    $0x29,%eax
40e1de:	75 10                	jne    0x40e1f0
40e1e0:	8b c6                	mov    %esi,%eax
40e1e2:	5e                   	pop    %esi
40e1e3:	c3                   	ret
40e1e4:	5e                   	pop    %esi
40e1e5:	e9 b6 c4 ff ff       	jmp    0x40a6a0
40e1ea:	66 83 f8 40          	cmp    $0x40,%ax
40e1ee:	74 83                	je     0x40e173
40e1f0:	e8 64 a7 01 00       	call   0x428959
40e1f5:	33 c0                	xor    %eax,%eax
40e1f7:	5e                   	pop    %esi
40e1f8:	c3                   	ret
40e1f9:	c7 06 3b 00 00 00    	movl   $0x3b,(%esi)
40e1ff:	33 c9                	xor    %ecx,%ecx
40e201:	eb c1                	jmp    0x40e1c4
40e203:	5e                   	pop    %esi
40e204:	e9 0c 48 00 00       	jmp    0x412a15
40e209:	cc                   	int3
40e20a:	cc                   	int3
40e20b:	cc                   	int3
40e20c:	cc                   	int3
40e20d:	cc                   	int3
40e20e:	cc                   	int3
40e20f:	cc                   	int3
40e210:	68 90 e0 40 00       	push   $0x40e090
40e215:	68 10 e2 40 00       	push   $0x40e210
40e21a:	6a 31                	push   $0x31
40e21c:	5a                   	pop    %edx
40e21d:	b9 f8 22 40 00       	mov    $0x4022f8,%ecx
40e222:	e8 a9 ea ff ff       	call   0x40ccd0
40e227:	c3                   	ret
40e228:	cc                   	int3
40e229:	cc                   	int3
40e22a:	cc                   	int3
40e22b:	cc                   	int3
40e22c:	cc                   	int3
40e22d:	cc                   	int3
40e22e:	cc                   	int3
40e22f:	cc                   	int3
40e230:	68 10 e2 40 00       	push   $0x40e210
40e235:	68 30 e2 40 00       	push   $0x40e230
40e23a:	6a 30                	push   $0x30
40e23c:	5a                   	pop    %edx
40e23d:	b9 00 23 40 00       	mov    $0x402300,%ecx
40e242:	e8 89 ea ff ff       	call   0x40ccd0
40e247:	c3                   	ret
40e248:	33 d2                	xor    %edx,%edx
40e24a:	b8 35 c4 00 00       	mov    $0xc435,%eax
40e24f:	42                   	inc    %edx
40e250:	3b c8                	cmp    %eax,%ecx
40e252:	0f 87 e2 f8 00 00    	ja     0x41db3a
40e258:	74 14                	je     0x40e26e
40e25a:	83 f9 2a             	cmp    $0x2a,%ecx
40e25d:	74 0f                	je     0x40e26e
40e25f:	81 f9 2b c4 00 00    	cmp    $0xc42b,%ecx
40e265:	0f 87 a6 f8 00 00    	ja     0x41db11
40e26b:	8b c2                	mov    %edx,%eax
40e26d:	c3                   	ret
40e26e:	33 d2                	xor    %edx,%edx
40e270:	eb f9                	jmp    0x40e26b
40e272:	8b ff                	mov    %edi,%edi
40e274:	53                   	push   %ebx
40e275:	56                   	push   %esi
40e276:	57                   	push   %edi
40e277:	8b f9                	mov    %ecx,%edi
40e279:	ba 00 80 00 00       	mov    $0x8000,%edx
40e27e:	51                   	push   %ecx
40e27f:	8b 0f                	mov    (%edi),%ecx
40e281:	e8 0a 23 00 00       	call   0x410590
40e286:	83 cb ff             	or     $0xffffffff,%ebx
40e289:	8b f0                	mov    %eax,%esi
40e28b:	3b f3                	cmp    %ebx,%esi
40e28d:	0f 84 ea f8 00 00    	je     0x41db7d
40e293:	6a 00                	push   $0x0
40e295:	6a 00                	push   $0x0
40e297:	ff 77 08             	push   0x8(%edi)
40e29a:	56                   	push   %esi
40e29b:	ff 15 2c a4 44 00    	call   *0x44a42c
40e2a1:	59                   	pop    %ecx
40e2a2:	50                   	push   %eax
40e2a3:	ff 15 a0 a0 44 00    	call   *0x44a0a0
40e2a9:	8b c6                	mov    %esi,%eax
40e2ab:	5f                   	pop    %edi
40e2ac:	5e                   	pop    %esi
40e2ad:	5b                   	pop    %ebx
40e2ae:	c3                   	ret
40e2af:	8b ff                	mov    %edi,%edi
40e2b1:	56                   	push   %esi
40e2b2:	8b 35 30 67 43 00    	mov    0x436730,%esi
40e2b8:	85 f6                	test   %esi,%esi
40e2ba:	74 0e                	je     0x40e2ca
40e2bc:	6a 00                	push   $0x0
40e2be:	8b ce                	mov    %esi,%ecx
40e2c0:	ff 15 c4 a4 44 00    	call   *0x44a4c4
40e2c6:	ff d6                	call   *%esi
40e2c8:	5e                   	pop    %esi
40e2c9:	c3                   	ret
40e2ca:	a1 c8 e0 42 00       	mov    0x42e0c8,%eax
40e2cf:	83 f8 ff             	cmp    $0xffffffff,%eax
40e2d2:	75 1b                	jne    0x40e2ef
40e2d4:	68 04 27 40 00       	push   $0x402704
40e2d9:	ff 15 74 a1 44 00    	call   *0x44a174
40e2df:	8b 35 30 67 43 00    	mov    0x436730,%esi
40e2e5:	a3 c8 e0 42 00       	mov    %eax,0x42e0c8
40e2ea:	83 f8 ff             	cmp    $0xffffffff,%eax
40e2ed:	74 18                	je     0x40e307
40e2ef:	85 c0                	test   %eax,%eax
40e2f1:	74 14                	je     0x40e307
40e2f3:	68 20 27 40 00       	push   $0x402720
40e2f8:	50                   	push   %eax
40e2f9:	ff 15 68 a1 44 00    	call   *0x44a168
40e2ff:	8b f0                	mov    %eax,%esi
40e301:	89 35 30 67 43 00    	mov    %esi,0x436730
40e307:	85 f6                	test   %esi,%esi
40e309:	75 b1                	jne    0x40e2bc
40e30b:	e9 f3 f8 00 00       	jmp    0x41dc03
40e310:	ff 35 ac 25 43 00    	push   0x4325ac
40e316:	6a 01                	push   $0x1
40e318:	ff 15 2c a4 44 00    	call   *0x44a42c
40e31e:	83 c4 04             	add    $0x4,%esp
40e321:	50                   	push   %eax
40e322:	ff 15 14 a0 44 00    	call   *0x44a014
40e328:	68 ac 25 43 00       	push   $0x4325ac
40e32d:	6a 01                	push   $0x1
40e32f:	ff 15 2c a4 44 00    	call   *0x44a42c
40e335:	83 c4 04             	add    $0x4,%esp
40e338:	50                   	push   %eax
40e339:	ff 15 10 a0 44 00    	call   *0x44a010
40e33f:	85 c0                	test   %eax,%eax
40e341:	74 14                	je     0x40e357
40e343:	8b 0d e0 e0 42 00    	mov    0x42e0e0,%ecx
40e349:	8b c1                	mov    %ecx,%eax
40e34b:	8b 15 ac 25 43 00    	mov    0x4325ac,%edx
40e351:	23 c2                	and    %edx,%eax
40e353:	3b c1                	cmp    %ecx,%eax
40e355:	75 65                	jne    0x40e3bc
40e357:	68 b0 25 43 00       	push   $0x4325b0
40e35c:	6a 00                	push   $0x0
40e35e:	ff 15 2c a4 44 00    	call   *0x44a42c
40e364:	83 c4 04             	add    $0x4,%esp
40e367:	50                   	push   %eax
40e368:	ff 15 10 a0 44 00    	call   *0x44a010
40e36e:	85 c0                	test   %eax,%eax
40e370:	74 49                	je     0x40e3bb
40e372:	8b 0d b0 25 43 00    	mov    0x4325b0,%ecx
40e378:	8b c1                	mov    %ecx,%eax
40e37a:	83 e0 17             	and    $0x17,%eax
40e37d:	3c 07                	cmp    $0x7,%al
40e37f:	74 1f                	je     0x40e3a0
40e381:	83 e1 ef             	and    $0xffffffef,%ecx
40e384:	83 c9 07             	or     $0x7,%ecx
40e387:	51                   	push   %ecx
40e388:	6a 00                	push   $0x0
40e38a:	89 0d b0 25 43 00    	mov    %ecx,0x4325b0
40e390:	ff 15 2c a4 44 00    	call   *0x44a42c
40e396:	83 c4 04             	add    $0x4,%esp
40e399:	50                   	push   %eax
40e39a:	ff 15 14 a0 44 00    	call   *0x44a014
40e3a0:	56                   	push   %esi
40e3a1:	8b 35 b4 25 43 00    	mov    0x4325b4,%esi
40e3a7:	85 f6                	test   %esi,%esi
40e3a9:	74 0f                	je     0x40e3ba
40e3ab:	68 3c 23 40 00       	push   $0x40233c
40e3b0:	8b ce                	mov    %esi,%ecx
40e3b2:	ff 15 c4 a4 44 00    	call   *0x44a4c4
40e3b8:	ff d6                	call   *%esi
40e3ba:	5e                   	pop    %esi
40e3bb:	c3                   	ret
40e3bc:	0b d1                	or     %ecx,%edx
40e3be:	52                   	push   %edx
40e3bf:	6a 01                	push   $0x1
40e3c1:	89 15 ac 25 43 00    	mov    %edx,0x4325ac
40e3c7:	ff 15 2c a4 44 00    	call   *0x44a42c
40e3cd:	83 c4 04             	add    $0x4,%esp
40e3d0:	50                   	push   %eax
40e3d1:	ff 15 14 a0 44 00    	call   *0x44a014
40e3d7:	85 c0                	test   %eax,%eax
40e3d9:	0f 85 78 ff ff ff    	jne    0x40e357
40e3df:	e9 2c f8 00 00       	jmp    0x41dc10
40e3e4:	cc                   	int3
40e3e5:	cc                   	int3
40e3e6:	cc                   	int3
40e3e7:	cc                   	int3
40e3e8:	cc                   	int3
40e3e9:	cc                   	int3
40e3ea:	cc                   	int3
40e3eb:	cc                   	int3
40e3ec:	cc                   	int3
40e3ed:	cc                   	int3
40e3ee:	cc                   	int3
40e3ef:	cc                   	int3
40e3f0:	8b ff                	mov    %edi,%edi
40e3f2:	55                   	push   %ebp
40e3f3:	8b ec                	mov    %esp,%ebp
40e3f5:	51                   	push   %ecx
40e3f6:	56                   	push   %esi
40e3f7:	8b f1                	mov    %ecx,%esi
40e3f9:	57                   	push   %edi
40e3fa:	8b 7d 08             	mov    0x8(%ebp),%edi
40e3fd:	3b be 10 02 00 00    	cmp    0x210(%esi),%edi
40e403:	76 58                	jbe    0x40e45d
40e405:	33 c9                	xor    %ecx,%ecx
40e407:	8b c7                	mov    %edi,%eax
40e409:	ba 02 00 00 00       	mov    $0x2,%edx
40e40e:	f7 e2                	mul    %edx
40e410:	68 34 27 40 00       	push   $0x402734
40e415:	0f 90 c1             	seto   %cl
40e418:	f7 d9                	neg    %ecx
40e41a:	0b c8                	or     %eax,%ecx
40e41c:	51                   	push   %ecx
40e41d:	e8 03 8a 00 00       	call   0x416e25
40e422:	83 c4 08             	add    $0x8,%esp
40e425:	85 c0                	test   %eax,%eax
40e427:	0f 84 1d f8 00 00    	je     0x41dc4a
40e42d:	8b 8e 08 02 00 00    	mov    0x208(%esi),%ecx
40e433:	89 86 08 02 00 00    	mov    %eax,0x208(%esi)
40e439:	85 c9                	test   %ecx,%ecx
40e43b:	0f 85 2a f8 00 00    	jne    0x41dc6b
40e441:	8b 86 08 02 00 00    	mov    0x208(%esi),%eax
40e447:	89 be 10 02 00 00    	mov    %edi,0x210(%esi)
40e44d:	85 c0                	test   %eax,%eax
40e44f:	74 15                	je     0x40e466
40e451:	57                   	push   %edi
40e452:	6a 00                	push   $0x0
40e454:	50                   	push   %eax
40e455:	e8 63 9b 00 00       	call   0x417fbd
40e45a:	83 c4 0c             	add    $0xc,%esp
40e45d:	33 c0                	xor    %eax,%eax
40e45f:	5f                   	pop    %edi
40e460:	5e                   	pop    %esi
40e461:	59                   	pop    %ecx
40e462:	5d                   	pop    %ebp
40e463:	c2 04 00             	ret    $0x4
40e466:	8b c6                	mov    %esi,%eax
40e468:	eb e7                	jmp    0x40e451
40e46a:	cc                   	int3
40e46b:	cc                   	int3
40e46c:	cc                   	int3
40e46d:	cc                   	int3
40e46e:	cc                   	int3
40e46f:	cc                   	int3
40e470:	8b ff                	mov    %edi,%edi
40e472:	55                   	push   %ebp
40e473:	8b ec                	mov    %esp,%ebp
40e475:	83 e4 f8             	and    $0xfffffff8,%esp
40e478:	83 ec 34             	sub    $0x34,%esp
40e47b:	53                   	push   %ebx
40e47c:	56                   	push   %esi
40e47d:	8b f2                	mov    %edx,%esi
40e47f:	57                   	push   %edi
40e480:	8b f9                	mov    %ecx,%edi
40e482:	85 f6                	test   %esi,%esi
40e484:	0f 84 d1 00 00 00    	je     0x40e55b
40e48a:	80 3d 44 67 43 00 00 	cmpb   $0x0,0x436744
40e491:	0f 85 c4 00 00 00    	jne    0x40e55b
40e497:	83 3e 2d             	cmpl   $0x2d,(%esi)
40e49a:	0f 84 bb 00 00 00    	je     0x40e55b
40e4a0:	80 3d 54 67 43 00 00 	cmpb   $0x0,0x436754
40e4a7:	bb 01 00 00 00       	mov    $0x1,%ebx
40e4ac:	74 22                	je     0x40e4d0
40e4ae:	6a 30                	push   $0x30
40e4b0:	8d 44 24 14          	lea    0x14(%esp),%eax
40e4b4:	6a 00                	push   $0x0
40e4b6:	50                   	push   %eax
40e4b7:	e8 01 9b 00 00       	call   0x417fbd
40e4bc:	83 c4 0c             	add    $0xc,%esp
40e4bf:	8d 54 24 10          	lea    0x10(%esp),%edx
40e4c3:	8b ce                	mov    %esi,%ecx
40e4c5:	6a 00                	push   $0x0
40e4c7:	e8 a4 01 00 00       	call   0x40e670
40e4cc:	85 c0                	test   %eax,%eax
40e4ce:	75 31                	jne    0x40e501
40e4d0:	83 ff 01             	cmp    $0x1,%edi
40e4d3:	0f 84 cb 00 00 00    	je     0x40e5a4
40e4d9:	8b 06                	mov    (%esi),%eax
40e4db:	85 c0                	test   %eax,%eax
40e4dd:	75 41                	jne    0x40e520
40e4df:	83 7e 34 00          	cmpl   $0x0,0x34(%esi)
40e4e3:	0f 85 89 00 00 00    	jne    0x40e572
40e4e9:	8b 06                	mov    (%esi),%eax
40e4eb:	85 c0                	test   %eax,%eax
40e4ed:	75 42                	jne    0x40e531
40e4ef:	8b ce                	mov    %esi,%ecx
40e4f1:	e8 6a c8 ff ff       	call   0x40ad60
40e4f6:	8b d8                	mov    %eax,%ebx
40e4f8:	a1 74 67 43 00       	mov    0x436774,%eax
40e4fd:	85 c0                	test   %eax,%eax
40e4ff:	75 65                	jne    0x40e566
40e501:	80 3d 54 67 43 00 00 	cmpb   $0x0,0x436754
40e508:	74 0d                	je     0x40e517
40e50a:	6a 01                	push   $0x1
40e50c:	8d 54 24 14          	lea    0x14(%esp),%edx
40e510:	8b ce                	mov    %esi,%ecx
40e512:	e8 59 01 00 00       	call   0x40e670
40e517:	8b c3                	mov    %ebx,%eax
40e519:	5f                   	pop    %edi
40e51a:	5e                   	pop    %esi
40e51b:	5b                   	pop    %ebx
40e51c:	8b e5                	mov    %ebp,%esp
40e51e:	5d                   	pop    %ebp
40e51f:	c3                   	ret
40e520:	83 f8 33             	cmp    $0x33,%eax
40e523:	74 ba                	je     0x40e4df
40e525:	83 f8 3b             	cmp    $0x3b,%eax
40e528:	74 b5                	je     0x40e4df
40e52a:	83 f8 3c             	cmp    $0x3c,%eax
40e52d:	75 ba                	jne    0x40e4e9
40e52f:	eb ae                	jmp    0x40e4df
40e531:	8d 04 40             	lea    (%eax,%eax,2),%eax
40e534:	8b 3c c5 84 16 40 00 	mov    0x401684(,%eax,8),%edi
40e53b:	56                   	push   %esi
40e53c:	81 ff 50 ab 40 00    	cmp    $0x40ab50,%edi
40e542:	74 1b                	je     0x40e55f
40e544:	81 ff 90 03 41 00    	cmp    $0x410390,%edi
40e54a:	74 3c                	je     0x40e588
40e54c:	81 ff b0 03 41 00    	cmp    $0x4103b0,%edi
40e552:	75 3e                	jne    0x40e592
40e554:	e8 57 1e 00 00       	call   0x4103b0
40e559:	eb 9b                	jmp    0x40e4f6
40e55b:	33 c0                	xor    %eax,%eax
40e55d:	eb ba                	jmp    0x40e519
40e55f:	e8 ec c5 ff ff       	call   0x40ab50
40e564:	eb 90                	jmp    0x40e4f6
40e566:	39 70 08             	cmp    %esi,0x8(%eax)
40e569:	75 96                	jne    0x40e501
40e56b:	e8 b5 bb ff ff       	call   0x40a125
40e570:	eb 8f                	jmp    0x40e501
40e572:	8b d7                	mov    %edi,%edx
40e574:	8b ce                	mov    %esi,%ecx
40e576:	e8 77 b9 ff ff       	call   0x409ef2
40e57b:	85 c0                	test   %eax,%eax
40e57d:	0f 84 66 ff ff ff    	je     0x40e4e9
40e583:	e9 79 ff ff ff       	jmp    0x40e501
40e588:	e8 03 1e 00 00       	call   0x410390
40e58d:	e9 64 ff ff ff       	jmp    0x40e4f6
40e592:	81 ff 40 07 41 00    	cmp    $0x410740,%edi
40e598:	75 7e                	jne    0x40e618
40e59a:	e8 a1 21 00 00       	call   0x410740
40e59f:	e9 52 ff ff ff       	jmp    0x40e4f6
40e5a4:	83 3e 32             	cmpl   $0x32,(%esi)
40e5a7:	0f 84 2c ff ff ff    	je     0x40e4d9
40e5ad:	b9 00 40 00 00       	mov    $0x4000,%ecx
40e5b2:	e8 19 f7 ff ff       	call   0x40dcd0
40e5b7:	8b f8                	mov    %eax,%edi
40e5b9:	85 ff                	test   %edi,%edi
40e5bb:	0f 84 40 ff ff ff    	je     0x40e501
40e5c1:	83 3e 00             	cmpl   $0x0,(%esi)