40c11e:	8b c7                	mov    %edi,%eax
40c120:	50                   	push   %eax
40c121:	68 59 04 00 00       	push   $0x459
40c126:	8b ce                	mov    %esi,%ecx
40c128:	e8 84 0b 00 00       	call   0x40ccb1
40c12d:	e8 e7 6b 00 00       	call   0x412d19
40c132:	8a d8                	mov    %al,%bl
40c134:	84 db                	test   %bl,%bl
40c136:	74 15                	je     0x40c14d
40c138:	e8 ed bc ff ff       	call   0x407e2a
40c13d:	50                   	push   %eax
40c13e:	bf 6d 04 00 00       	mov    $0x46d,%edi
40c143:	8b ce                	mov    %esi,%ecx
40c145:	57                   	push   %edi
40c146:	e8 b1 0b 00 00       	call   0x40ccfc
40c14b:	eb 26                	jmp    0x40c173
40c14d:	57                   	push   %edi
40c14e:	bf 6d 04 00 00       	mov    $0x46d,%edi
40c153:	8b ce                	mov    %esi,%ecx
40c155:	57                   	push   %edi
40c156:	e8 a1 0b 00 00       	call   0x40ccfc
40c15b:	6a 00                	push   $0x0
40c15d:	57                   	push   %edi
40c15e:	8b ce                	mov    %esi,%ecx
40c160:	e8 07 0b 00 00       	call   0x40cc6c
40c165:	6a 00                	push   $0x0
40c167:	68 6f 04 00 00       	push   $0x46f
40c16c:	8b ce                	mov    %esi,%ecx
40c16e:	e8 f9 0a 00 00       	call   0x40cc6c
40c173:	83 65 f8 00          	andl   $0x0,-0x8(%ebp)
40c177:	8d 45 f8             	lea    -0x8(%ebp),%eax
40c17a:	50                   	push   %eax
40c17b:	68 34 01 00 00       	push   $0x134
40c180:	e8 44 6c 00 00       	call   0x412dc9
40c185:	8b 45 f8             	mov    -0x8(%ebp),%eax
40c188:	83 65 f8 00          	andl   $0x0,-0x8(%ebp)
40c18c:	a3 10 98 41 00       	mov    %eax,0x419810
40c191:	8d 45 f8             	lea    -0x8(%ebp),%eax
40c194:	50                   	push   %eax
40c195:	68 4c 01 00 00       	push   $0x14c
40c19a:	e8 2a 6c 00 00       	call   0x412dc9
40c19f:	8b 45 f8             	mov    -0x8(%ebp),%eax
40c1a2:	8b ce                	mov    %esi,%ecx
40c1a4:	a3 18 98 41 00       	mov    %eax,0x419818
40c1a9:	33 c0                	xor    %eax,%eax
40c1ab:	39 05 10 98 41 00    	cmp    %eax,0x419810
40c1b1:	0f 94 c0             	sete   %al
40c1b4:	50                   	push   %eax
40c1b5:	68 61 04 00 00       	push   $0x461
40c1ba:	e8 3d 0b 00 00       	call   0x40ccfc
40c1bf:	ff 35 10 98 41 00    	push   0x419810
40c1c5:	8b ce                	mov    %esi,%ecx
40c1c7:	68 63 04 00 00       	push   $0x463
40c1cc:	e8 2b 0b 00 00       	call   0x40ccfc
40c1d1:	33 c0                	xor    %eax,%eax
40c1d3:	8b ce                	mov    %esi,%ecx
40c1d5:	39 05 10 98 41 00    	cmp    %eax,0x419810
40c1db:	0f 94 c0             	sete   %al
40c1de:	50                   	push   %eax
40c1df:	68 6c 04 00 00       	push   $0x46c
40c1e4:	e8 83 0a 00 00       	call   0x40cc6c
40c1e9:	84 db                	test   %bl,%bl
40c1eb:	74 18                	je     0x40c205
40c1ed:	6a 01                	push   $0x1
40c1ef:	57                   	push   %edi
40c1f0:	8b ce                	mov    %esi,%ecx
40c1f2:	e8 75 0a 00 00       	call   0x40cc6c
40c1f7:	6a 01                	push   $0x1
40c1f9:	68 6f 04 00 00       	push   $0x46f
40c1fe:	8b ce                	mov    %esi,%ecx
40c200:	e8 67 0a 00 00       	call   0x40cc6c
40c205:	83 3d 80 93 41 00 02 	cmpl   $0x2,0x419380
40c20c:	75 78                	jne    0x40c286
40c20e:	6a 37                	push   $0x37
40c210:	59                   	pop    %ecx
40c211:	e8 73 c4 ff ff       	call   0x408689
40c216:	85 c0                	test   %eax,%eax
40c218:	74 3a                	je     0x40c254
40c21a:	6a 38                	push   $0x38
40c21c:	59                   	pop    %ecx
40c21d:	e8 67 c4 ff ff       	call   0x408689
40c222:	85 c0                	test   %eax,%eax
40c224:	74 2e                	je     0x40c254
40c226:	6a 39                	push   $0x39
40c228:	59                   	pop    %ecx
40c229:	e8 5b c4 ff ff       	call   0x408689
40c22e:	85 c0                	test   %eax,%eax
40c230:	74 22                	je     0x40c254
40c232:	6a 01                	push   $0x1
40c234:	68 61 04 00 00       	push   $0x461
40c239:	8b ce                	mov    %esi,%ecx
40c23b:	e8 2c 0a 00 00       	call   0x40cc6c
40c240:	6a 01                	push   $0x1
40c242:	bf 63 04 00 00       	mov    $0x463,%edi
40c247:	8b ce                	mov    %esi,%ecx
40c249:	57                   	push   %edi
40c24a:	e8 1d 0a 00 00       	call   0x40cc6c
40c24f:	e9 8d 00 00 00       	jmp    0x40c2e1
40c254:	6a 00                	push   $0x0
40c256:	bf 63 04 00 00       	mov    $0x463,%edi
40c25b:	8b ce                	mov    %esi,%ecx
40c25d:	57                   	push   %edi
40c25e:	e8 09 0a 00 00       	call   0x40cc6c
40c263:	83 3d 10 98 41 00 00 	cmpl   $0x0,0x419810
40c26a:	74 75                	je     0x40c2e1
40c26c:	6a 01                	push   $0x1
40c26e:	68 61 04 00 00       	push   $0x461
40c273:	8b ce                	mov    %esi,%ecx
40c275:	e8 82 0a 00 00       	call   0x40ccfc
40c27a:	6a 00                	push   $0x0
40c27c:	57                   	push   %edi
40c27d:	8b ce                	mov    %esi,%ecx
40c27f:	e8 78 0a 00 00       	call   0x40ccfc
40c284:	eb 5b                	jmp    0x40c2e1
40c286:	33 db                	xor    %ebx,%ebx
40c288:	53                   	push   %ebx
40c289:	68 65 04 00 00       	push   $0x465
40c28e:	ff 76 04             	push   0x4(%esi)
40c291:	ff 15 d0 b1 41 00    	call   *0x41b1d0
40c297:	50                   	push   %eax
40c298:	ff 15 34 b2 41 00    	call   *0x41b234
40c29e:	53                   	push   %ebx
40c29f:	68 61 04 00 00       	push   $0x461
40c2a4:	8b ce                	mov    %esi,%ecx
40c2a6:	e8 c1 09 00 00       	call   0x40cc6c
40c2ab:	53                   	push   %ebx
40c2ac:	bf 63 04 00 00       	mov    $0x463,%edi
40c2b1:	8b ce                	mov    %esi,%ecx
40c2b3:	57                   	push   %edi
40c2b4:	e8 b3 09 00 00       	call   0x40cc6c
40c2b9:	53                   	push   %ebx
40c2ba:	68 61 04 00 00       	push   $0x461
40c2bf:	ff 76 04             	push   0x4(%esi)
40c2c2:	ff 15 d0 b1 41 00    	call   *0x41b1d0
40c2c8:	50                   	push   %eax
40c2c9:	ff 15 34 b2 41 00    	call   *0x41b234
40c2cf:	53                   	push   %ebx
40c2d0:	57                   	push   %edi
40c2d1:	ff 76 04             	push   0x4(%esi)
40c2d4:	ff 15 d0 b1 41 00    	call   *0x41b1d0
40c2da:	50                   	push   %eax
40c2db:	ff 15 34 b2 41 00    	call   *0x41b234
40c2e1:	5f                   	pop    %edi
40c2e2:	5e                   	pop    %esi
40c2e3:	5b                   	pop    %ebx
40c2e4:	c9                   	leave
40c2e5:	c2 04 00             	ret    $0x4
40c2e8:	cc                   	int3
40c2e9:	cc                   	int3
40c2ea:	cc                   	int3
40c2eb:	cc                   	int3
40c2ec:	cc                   	int3
40c2ed:	cc                   	int3
40c2ee:	cc                   	int3
40c2ef:	cc                   	int3
40c2f0:	8b ff                	mov    %edi,%edi
40c2f2:	55                   	push   %ebp
40c2f3:	8b ec                	mov    %esp,%ebp
40c2f5:	51                   	push   %ecx
40c2f6:	8b 45 08             	mov    0x8(%ebp),%eax
40c2f9:	8b d0                	mov    %eax,%edx
40c2fb:	53                   	push   %ebx
40c2fc:	56                   	push   %esi
40c2fd:	0f b7 c0             	movzwl %ax,%eax
40c300:	33 db                	xor    %ebx,%ebx
40c302:	c1 ea 10             	shr    $0x10,%edx
40c305:	8b f1                	mov    %ecx,%esi
40c307:	57                   	push   %edi
40c308:	2d 61 04 00 00       	sub    $0x461,%eax
40c30d:	74 72                	je     0x40c381
40c30f:	48                   	dec    %eax
40c310:	83 e8 01             	sub    $0x1,%eax
40c313:	74 59                	je     0x40c36e
40c315:	83 e8 09             	sub    $0x9,%eax
40c318:	74 03                	je     0x40c31d
40c31a:	43                   	inc    %ebx
40c31b:	eb 77                	jmp    0x40c394
40c31d:	33 c0                	xor    %eax,%eax
40c31f:	66 3b c2             	cmp    %dx,%ax
40c322:	75 70                	jne    0x40c394
40c324:	6a 0c                	push   $0xc
40c326:	e8 6c 70 00 00       	call   0x413397
40c32b:	8b f8                	mov    %eax,%edi
40c32d:	89 7d fc             	mov    %edi,-0x4(%ebp)
40c330:	59                   	pop    %ecx
40c331:	85 ff                	test   %edi,%edi
40c333:	74 11                	je     0x40c346
40c335:	33 c0                	xor    %eax,%eax
40c337:	89 5f 04             	mov    %ebx,0x4(%edi)
40c33a:	66 89 47 08          	mov    %ax,0x8(%edi)
40c33e:	c7 07 58 15 40 00    	movl   $0x401558,(%edi)
40c344:	eb 02                	jmp    0x40c348
40c346:	8b fb                	mov    %ebx,%edi
40c348:	85 ff                	test   %edi,%edi
40c34a:	74 48                	je     0x40c394
40c34c:	8b 4e 04             	mov    0x4(%esi),%ecx
40c34f:	ba 51 01 00 00       	mov    $0x151,%edx
40c354:	57                   	push   %edi
40c355:	e8 2b 38 00 00       	call   0x40fb85
40c35a:	8b 07                	mov    (%edi),%eax
40c35c:	6a 01                	push   $0x1
40c35e:	8b 30                	mov    (%eax),%esi
40c360:	8b ce                	mov    %esi,%ecx
40c362:	ff 15 90 b3 41 00    	call   *0x41b390
40c368:	8b cf                	mov    %edi,%ecx
40c36a:	ff d6                	call   *%esi
40c36c:	eb 26                	jmp    0x40c394
40c36e:	33 c0                	xor    %eax,%eax
40c370:	66 3b c2             	cmp    %dx,%ax
40c373:	75 1f                	jne    0x40c394
40c375:	c7 05 10 98 41 00 01 	movl   $0x1,0x419810
40c37c:	00 00 00
40c37f:	eb 0d                	jmp    0x40c38e
40c381:	33 c0                	xor    %eax,%eax
40c383:	66 3b c2             	cmp    %dx,%ax
40c386:	75 0c                	jne    0x40c394
40c388:	89 1d 10 98 41 00    	mov    %ebx,0x419810
40c38e:	53                   	push   %ebx
40c38f:	e8 0c 00 00 00       	call   0x40c3a0
40c394:	5f                   	pop    %edi
40c395:	5e                   	pop    %esi
40c396:	8b c3                	mov    %ebx,%eax
40c398:	5b                   	pop    %ebx
40c399:	c9                   	leave
40c39a:	c2 08 00             	ret    $0x8
40c39d:	cc                   	int3
40c39e:	cc                   	int3
40c39f:	cc                   	int3
40c3a0:	83 3d 10 98 41 00 00 	cmpl   $0x0,0x419810
40c3a7:	56                   	push   %esi
40c3a8:	8b f1                	mov    %ecx,%esi
40c3aa:	75 0e                	jne    0x40c3ba
40c3ac:	e8 dd be ff ff       	call   0x40828e
40c3b1:	85 c0                	test   %eax,%eax
40c3b3:	74 05                	je     0x40c3ba
40c3b5:	33 c0                	xor    %eax,%eax
40c3b7:	40                   	inc    %eax
40c3b8:	eb 02                	jmp    0x40c3bc
40c3ba:	33 c0                	xor    %eax,%eax
40c3bc:	50                   	push   %eax
40c3bd:	68 fe 03 00 00       	push   $0x3fe
40c3c2:	8b ce                	mov    %esi,%ecx
40c3c4:	e8 a3 08 00 00       	call   0x40cc6c
40c3c9:	33 c0                	xor    %eax,%eax
40c3cb:	8b ce                	mov    %esi,%ecx
40c3cd:	39 05 10 98 41 00    	cmp    %eax,0x419810
40c3d3:	0f 94 c0             	sete   %al
40c3d6:	50                   	push   %eax
40c3d7:	68 6c 04 00 00       	push   $0x46c
40c3dc:	e8 8b 08 00 00       	call   0x40cc6c
40c3e1:	33 c0                	xor    %eax,%eax
40c3e3:	5e                   	pop    %esi
40c3e4:	c2 04 00             	ret    $0x4
40c3e7:	cc                   	int3
40c3e8:	cc                   	int3
40c3e9:	cc                   	int3
40c3ea:	cc                   	int3
40c3eb:	cc                   	int3
40c3ec:	cc                   	int3
40c3ed:	cc                   	int3
40c3ee:	cc                   	int3
40c3ef:	cc                   	int3
40c3f0:	8b ff                	mov    %edi,%edi
40c3f2:	56                   	push   %esi
40c3f3:	57                   	push   %edi
40c3f4:	6a 00                	push   $0x0
40c3f6:	68 18 01 00 00       	push   $0x118
40c3fb:	8b f1                	mov    %ecx,%esi
40c3fd:	e8 f9 69 00 00       	call   0x412dfb
40c402:	6a 00                	push   $0x0
40c404:	bf 1f 01 00 00       	mov    $0x11f,%edi
40c409:	57                   	push   %edi
40c40a:	e8 ec 69 00 00       	call   0x412dfb
40c40f:	68 ee 03 00 00       	push   $0x3ee
40c414:	8b ce                	mov    %esi,%ecx
40c416:	e8 bc 08 00 00       	call   0x40ccd7
40c41b:	f7 d8                	neg    %eax
40c41d:	1b c0                	sbb    %eax,%eax
40c41f:	f7 d8                	neg    %eax
40c421:	50                   	push   %eax
40c422:	68 19 01 00 00       	push   $0x119
40c427:	e8 cf 69 00 00       	call   0x412dfb
40c42c:	68 05 04 00 00       	push   $0x405
40c431:	8b ce                	mov    %esi,%ecx
40c433:	e8 9f 08 00 00       	call   0x40ccd7
40c438:	50                   	push   %eax
40c439:	57                   	push   %edi
40c43a:	e8 bc 69 00 00       	call   0x412dfb
40c43f:	68 59 04 00 00       	push   $0x459
40c444:	8b ce                	mov    %esi,%ecx
40c446:	e8 8c 08 00 00       	call   0x40ccd7
40c44b:	83 e8 00             	sub    $0x0,%eax
40c44e:	74 10                	je     0x40c460
40c450:	83 e8 01             	sub    $0x1,%eax
40c453:	74 04                	je     0x40c459
40c455:	6a ff                	push   $0xffffffff
40c457:	eb 0c                	jmp    0x40c465
40c459:	68 09 04 00 00       	push   $0x409
40c45e:	eb 05                	jmp    0x40c465
40c460:	68 04 04 00 00       	push   $0x404
40c465:	68 5a 01 00 00       	push   $0x15a
40c46a:	e8 8c 69 00 00       	call   0x412dfb
40c46f:	68 fe 03 00 00       	push   $0x3fe
40c474:	8b ce                	mov    %esi,%ecx
40c476:	e8 ad 08 00 00       	call   0x40cd28
40c47b:	48                   	dec    %eax
40c47c:	f7 d8                	neg    %eax
40c47e:	1b c0                	sbb    %eax,%eax
40c480:	40                   	inc    %eax
40c481:	50                   	push   %eax
40c482:	68 18 01 00 00       	push   $0x118
40c487:	e8 6f 69 00 00       	call   0x412dfb
40c48c:	ff 35 10 98 41 00    	push   0x419810
40c492:	68 34 01 00 00       	push   $0x134
40c497:	e8 5f 69 00 00       	call   0x412dfb
40c49c:	68 6d 04 00 00       	push   $0x46d
40c4a1:	8b ce                	mov    %esi,%ecx
40c4a3:	e8 80 08 00 00       	call   0x40cd28
40c4a8:	48                   	dec    %eax
40c4a9:	f7 d8                	neg    %eax
40c4ab:	1b c0                	sbb    %eax,%eax
40c4ad:	8d 48 01             	lea    0x1(%eax),%ecx
40c4b0:	e8 9a b8 ff ff       	call   0x407d4f
40c4b5:	5f                   	pop    %edi
40c4b6:	33 c0                	xor    %eax,%eax
40c4b8:	5e                   	pop    %esi
40c4b9:	c2 04 00             	ret    $0x4
40c4bc:	cc                   	int3
40c4bd:	cc                   	int3
40c4be:	cc                   	int3
40c4bf:	cc                   	int3
40c4c0:	8b ff                	mov    %edi,%edi
40c4c2:	55                   	push   %ebp
40c4c3:	8b ec                	mov    %esp,%ebp
40c4c5:	8b 45 08             	mov    0x8(%ebp),%eax
40c4c8:	53                   	push   %ebx
40c4c9:	33 db                	xor    %ebx,%ebx
40c4cb:	85 c0                	test   %eax,%eax
40c4cd:	74 6d                	je     0x40c53c
40c4cf:	81 78 04 6f 04 00 00 	cmpl   $0x46f,0x4(%eax)
40c4d6:	75 5c                	jne    0x40c534
40c4d8:	83 78 08 fc          	cmpl   $0xfffffffc,0x8(%eax)
40c4dc:	74 06                	je     0x40c4e4
40c4de:	83 78 08 fe          	cmpl   $0xfffffffe,0x8(%eax)
40c4e2:	75 50                	jne    0x40c534
40c4e4:	ff 15 8c b1 41 00    	call   *0x41b18c
40c4ea:	b9 04 0c 00 00       	mov    $0xc04,%ecx
40c4ef:	66 3b c1             	cmp    %cx,%ax
40c4f2:	75 0b                	jne    0x40c4ff
40c4f4:	6a 01                	push   $0x1