40d18d:	c7 45 d8 02 00 00 00 	movl   $0x2,-0x28(%ebp)
40d194:	ff d6                	call   *%esi
40d196:	8d 55 b8             	lea    -0x48(%ebp),%edx
40d199:	52                   	push   %edx
40d19a:	8d 85 78 ff ff ff    	lea    -0x88(%ebp),%eax
40d1a0:	50                   	push   %eax
40d1a1:	c7 45 80 0c 00 00 00 	movl   $0xc,-0x80(%ebp)
40d1a8:	c7 85 78 ff ff ff 02 	movl   $0x8002,-0x88(%ebp)
40d1af:	80 00 00
40d1b2:	ff d7                	call   *%edi
40d1b4:	8d 4d b8             	lea    -0x48(%ebp),%ecx
40d1b7:	51                   	push   %ecx
40d1b8:	8d 55 c8             	lea    -0x38(%ebp),%edx
40d1bb:	52                   	push   %edx
40d1bc:	89 85 74 ff ff ff    	mov    %eax,-0x8c(%ebp)
40d1c2:	8d 45 d8             	lea    -0x28(%ebp),%eax
40d1c5:	50                   	push   %eax
40d1c6:	6a 03                	push   $0x3
40d1c8:	ff d3                	call   *%ebx
40d1ca:	83 c4 10             	add    $0x10,%esp
40d1cd:	66 83 bd 74 ff ff ff 	cmpw   $0x0,-0x8c(%ebp)
40d1d4:	00
40d1d5:	74 08                	je     0x40d1df
40d1d7:	6a 41                	push   $0x41
40d1d9:	ff 15 34 11 40 00    	call   *0x401134
40d1df:	6a 01                	push   $0x1
40d1e1:	6a 01                	push   $0x1
40d1e3:	8d 4d c8             	lea    -0x38(%ebp),%ecx
40d1e6:	51                   	push   %ecx
40d1e7:	8d 55 d8             	lea    -0x28(%ebp),%edx
40d1ea:	52                   	push   %edx
40d1eb:	8d 45 b8             	lea    -0x48(%ebp),%eax
40d1ee:	50                   	push   %eax
40d1ef:	c7 45 d0 04 00 02 80 	movl   $0x80020004,-0x30(%ebp)
40d1f6:	c7 45 c8 0a 00 00 00 	movl   $0xa,-0x38(%ebp)
40d1fd:	c7 45 e0 0c 00 00 00 	movl   $0xc,-0x20(%ebp)
40d204:	c7 45 d8 02 00 00 00 	movl   $0x2,-0x28(%ebp)
40d20b:	ff d6                	call   *%esi
40d20d:	8d 4d b8             	lea    -0x48(%ebp),%ecx
40d210:	51                   	push   %ecx
40d211:	8d 95 78 ff ff ff    	lea    -0x88(%ebp),%edx
40d217:	52                   	push   %edx
40d218:	c7 45 80 0c 00 00 00 	movl   $0xc,-0x80(%ebp)
40d21f:	c7 85 78 ff ff ff 02 	movl   $0x8002,-0x88(%ebp)
40d226:	80 00 00
40d229:	ff d7                	call   *%edi
40d22b:	8d 4d c8             	lea    -0x38(%ebp),%ecx
40d22e:	8d 55 d8             	lea    -0x28(%ebp),%edx
40d231:	89 85 74 ff ff ff    	mov    %eax,-0x8c(%ebp)
40d237:	8d 45 b8             	lea    -0x48(%ebp),%eax
40d23a:	50                   	push   %eax
40d23b:	51                   	push   %ecx
40d23c:	52                   	push   %edx
40d23d:	6a 03                	push   $0x3
40d23f:	ff d3                	call   *%ebx
40d241:	83 c4 10             	add    $0x10,%esp
40d244:	66 83 bd 74 ff ff ff 	cmpw   $0x0,-0x8c(%ebp)
40d24b:	00
40d24c:	74 08                	je     0x40d256
40d24e:	6a 67                	push   $0x67
40d250:	ff 15 34 11 40 00    	call   *0x401134
40d256:	6a 01                	push   $0x1
40d258:	6a 01                	push   $0x1
40d25a:	8d 45 c8             	lea    -0x38(%ebp),%eax
40d25d:	50                   	push   %eax
40d25e:	8d 4d d8             	lea    -0x28(%ebp),%ecx
40d261:	51                   	push   %ecx
40d262:	8d 55 b8             	lea    -0x48(%ebp),%edx
40d265:	52                   	push   %edx
40d266:	c7 45 d0 04 00 02 80 	movl   $0x80020004,-0x30(%ebp)
40d26d:	c7 45 c8 0a 00 00 00 	movl   $0xa,-0x38(%ebp)
40d274:	c7 45 e0 0c 00 00 00 	movl   $0xc,-0x20(%ebp)
40d27b:	c7 45 d8 02 00 00 00 	movl   $0x2,-0x28(%ebp)
40d282:	ff d6                	call   *%esi
40d284:	8d 45 b8             	lea    -0x48(%ebp),%eax
40d287:	50                   	push   %eax
40d288:	8d 8d 78 ff ff ff    	lea    -0x88(%ebp),%ecx
40d28e:	51                   	push   %ecx
40d28f:	c7 45 80 0c 00 00 00 	movl   $0xc,-0x80(%ebp)
40d296:	c7 85 78 ff ff ff 02 	movl   $0x8002,-0x88(%ebp)
40d29d:	80 00 00
40d2a0:	ff d7                	call   *%edi
40d2a2:	8d 55 b8             	lea    -0x48(%ebp),%edx
40d2a5:	52                   	push   %edx
40d2a6:	8d 4d d8             	lea    -0x28(%ebp),%ecx
40d2a9:	8b f0                	mov    %eax,%esi
40d2ab:	8d 45 c8             	lea    -0x38(%ebp),%eax
40d2ae:	50                   	push   %eax
40d2af:	51                   	push   %ecx
40d2b0:	6a 03                	push   $0x3
40d2b2:	ff d3                	call   *%ebx
40d2b4:	83 c4 10             	add    $0x10,%esp
40d2b7:	66 85 f6             	test   %si,%si
40d2ba:	74 0b                	je     0x40d2c7
40d2bc:	68 b4 00 00 00       	push   $0xb4
40d2c1:	ff 15 34 11 40 00    	call   *0x401134
40d2c7:	68 f4 d2 40 00       	push   $0x40d2f4
40d2cc:	eb 1c                	jmp    0x40d2ea
40d2ce:	8d 55 a8             	lea    -0x58(%ebp),%edx
40d2d1:	52                   	push   %edx
40d2d2:	8d 45 b8             	lea    -0x48(%ebp),%eax
40d2d5:	50                   	push   %eax
40d2d6:	8d 4d c8             	lea    -0x38(%ebp),%ecx
40d2d9:	51                   	push   %ecx
40d2da:	8d 55 d8             	lea    -0x28(%ebp),%edx
40d2dd:	52                   	push   %edx
40d2de:	6a 04                	push   $0x4
40d2e0:	ff 15 28 10 40 00    	call   *0x401028
40d2e6:	83 c4 14             	add    $0x14,%esp
40d2e9:	c3                   	ret
40d2ea:	8d 4d e8             	lea    -0x18(%ebp),%ecx
40d2ed:	ff 15 a8 11 40 00    	call   *0x4011a8
40d2f3:	c3                   	ret
40d2f4:	8b 45 18             	mov    0x18(%ebp),%eax
40d2f7:	66 8b 4d ec          	mov    -0x14(%ebp),%cx
40d2fb:	66 89 08             	mov    %cx,(%eax)
40d2fe:	8b 4d f0             	mov    -0x10(%ebp),%ecx
40d301:	5f                   	pop    %edi
40d302:	5e                   	pop    %esi
40d303:	33 c0                	xor    %eax,%eax
40d305:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
40d30c:	5b                   	pop    %ebx
40d30d:	8b e5                	mov    %ebp,%esp
40d30f:	5d                   	pop    %ebp
40d310:	c2 14 00             	ret    $0x14
40d313:	90                   	nop
40d314:	90                   	nop
40d315:	90                   	nop
40d316:	90                   	nop
40d317:	90                   	nop
40d318:	90                   	nop
40d319:	90                   	nop
40d31a:	90                   	nop
40d31b:	90                   	nop
40d31c:	90                   	nop
40d31d:	90                   	nop
40d31e:	90                   	nop
40d31f:	90                   	nop
40d320:	83 ec 10             	sub    $0x10,%esp
40d323:	53                   	push   %ebx
40d324:	55                   	push   %ebp
40d325:	56                   	push   %esi
40d326:	57                   	push   %edi
40d327:	8b 3d 08 11 40 00    	mov    0x401108,%edi
40d32d:	68 7e 21 00 00       	push   $0x217e
40d332:	8d 44 24 14          	lea    0x14(%esp),%eax
40d336:	50                   	push   %eax
40d337:	c7 44 24 18 00 00 00 	movl   $0x0,0x18(%esp)
40d33e:	00
40d33f:	ff d7                	call   *%edi
40d341:	8b 1d 60 10 40 00    	mov    0x401060,%ebx
40d347:	50                   	push   %eax
40d348:	ff d3                	call   *%ebx
40d34a:	8b 2d 14 10 40 00    	mov    0x401014,%ebp
40d350:	33 c9                	xor    %ecx,%ecx
40d352:	66 3d ff ff          	cmp    $0xffff,%ax
40d356:	0f 95 c1             	setne  %cl
40d359:	f7 d9                	neg    %ecx
40d35b:	66 8b f1             	mov    %cx,%si
40d35e:	8d 4c 24 10          	lea    0x10(%esp),%ecx
40d362:	ff d5                	call   *%ebp
40d364:	66 85 f6             	test   %si,%si
40d367:	8b 74 24 24          	mov    0x24(%esp),%esi
40d36b:	74 1f                	je     0x40d38c
40d36d:	8b 16                	mov    (%esi),%edx
40d36f:	56                   	push   %esi
40d370:	ff 92 14 07 00 00    	call   *0x714(%edx)
40d376:	85 c0                	test   %eax,%eax
40d378:	7d 12                	jge    0x40d38c
40d37a:	68 14 07 00 00       	push   $0x714
40d37f:	68 04 76 40 00       	push   $0x407604
40d384:	56                   	push   %esi
40d385:	50                   	push   %eax
40d386:	ff 15 48 10 40 00    	call   *0x401048
40d38c:	68 d8 3c 00 00       	push   $0x3cd8
40d391:	8d 44 24 14          	lea    0x14(%esp),%eax
40d395:	50                   	push   %eax
40d396:	ff d7                	call   *%edi
40d398:	50                   	push   %eax
40d399:	ff d3                	call   *%ebx
40d39b:	33 c9                	xor    %ecx,%ecx
40d39d:	66 3d ff ff          	cmp    $0xffff,%ax
40d3a1:	0f 95 c1             	setne  %cl
40d3a4:	f7 d9                	neg    %ecx
40d3a6:	66 89 4c 24 24       	mov    %cx,0x24(%esp)
40d3ab:	8d 4c 24 10          	lea    0x10(%esp),%ecx
40d3af:	ff d5                	call   *%ebp
40d3b1:	66 83 7c 24 24 00    	cmpw   $0x0,0x24(%esp)
40d3b7:	74 1f                	je     0x40d3d8
40d3b9:	8b 16                	mov    (%esi),%edx
40d3bb:	56                   	push   %esi
40d3bc:	ff 92 14 07 00 00    	call   *0x714(%edx)
40d3c2:	85 c0                	test   %eax,%eax
40d3c4:	7d 12                	jge    0x40d3d8
40d3c6:	68 14 07 00 00       	push   $0x714
40d3cb:	68 04 76 40 00       	push   $0x407604
40d3d0:	56                   	push   %esi
40d3d1:	50                   	push   %eax
40d3d2:	ff 15 48 10 40 00    	call   *0x401048
40d3d8:	68 2c 4b 00 00       	push   $0x4b2c
40d3dd:	8d 44 24 14          	lea    0x14(%esp),%eax
40d3e1:	50                   	push   %eax
40d3e2:	ff d7                	call   *%edi
40d3e4:	50                   	push   %eax
40d3e5:	ff d3                	call   *%ebx
40d3e7:	33 c9                	xor    %ecx,%ecx
40d3e9:	66 3d ff ff          	cmp    $0xffff,%ax
40d3ed:	0f 95 c1             	setne  %cl
40d3f0:	f7 d9                	neg    %ecx
40d3f2:	66 89 4c 24 24       	mov    %cx,0x24(%esp)
40d3f7:	8d 4c 24 10          	lea    0x10(%esp),%ecx
40d3fb:	ff d5                	call   *%ebp
40d3fd:	66 83 7c 24 24 00    	cmpw   $0x0,0x24(%esp)
40d403:	74 1f                	je     0x40d424
40d405:	8b 16                	mov    (%esi),%edx
40d407:	56                   	push   %esi
40d408:	ff 92 14 07 00 00    	call   *0x714(%edx)
40d40e:	85 c0                	test   %eax,%eax
40d410:	7d 12                	jge    0x40d424
40d412:	68 14 07 00 00       	push   $0x714
40d417:	68 04 76 40 00       	push   $0x407604
40d41c:	56                   	push   %esi
40d41d:	50                   	push   %eax
40d41e:	ff 15 48 10 40 00    	call   *0x401048
40d424:	68 94 74 00 00       	push   $0x7494
40d429:	8d 44 24 14          	lea    0x14(%esp),%eax
40d42d:	50                   	push   %eax
40d42e:	ff d7                	call   *%edi
40d430:	50                   	push   %eax
40d431:	ff d3                	call   *%ebx
40d433:	33 c9                	xor    %ecx,%ecx
40d435:	66 3d ff ff          	cmp    $0xffff,%ax
40d439:	0f 95 c1             	setne  %cl
40d43c:	f7 d9                	neg    %ecx
40d43e:	66 89 4c 24 24       	mov    %cx,0x24(%esp)
40d443:	8d 4c 24 10          	lea    0x10(%esp),%ecx
40d447:	ff d5                	call   *%ebp
40d449:	66 83 7c 24 24 00    	cmpw   $0x0,0x24(%esp)
40d44f:	74 1f                	je     0x40d470
40d451:	8b 16                	mov    (%esi),%edx
40d453:	56                   	push   %esi
40d454:	ff 92 14 07 00 00    	call   *0x714(%edx)
40d45a:	85 c0                	test   %eax,%eax
40d45c:	7d 12                	jge    0x40d470
40d45e:	68 14 07 00 00       	push   $0x714
40d463:	68 04 76 40 00       	push   $0x407604
40d468:	56                   	push   %esi
40d469:	50                   	push   %eax
40d46a:	ff 15 48 10 40 00    	call   *0x401048
40d470:	68 d2 18 00 00       	push   $0x18d2
40d475:	8d 44 24 14          	lea    0x14(%esp),%eax
40d479:	50                   	push   %eax
40d47a:	ff d7                	call   *%edi
40d47c:	50                   	push   %eax
40d47d:	ff d3                	call   *%ebx
40d47f:	33 c9                	xor    %ecx,%ecx
40d481:	66 3d ff ff          	cmp    $0xffff,%ax
40d485:	0f 95 c1             	setne  %cl
40d488:	f7 d9                	neg    %ecx
40d48a:	66 89 4c 24 24       	mov    %cx,0x24(%esp)
40d48f:	8d 4c 24 10          	lea    0x10(%esp),%ecx
40d493:	ff d5                	call   *%ebp
40d495:	66 83 7c 24 24 00    	cmpw   $0x0,0x24(%esp)
40d49b:	74 1f                	je     0x40d4bc
40d49d:	8b 16                	mov    (%esi),%edx
40d49f:	56                   	push   %esi
40d4a0:	ff 92 14 07 00 00    	call   *0x714(%edx)
40d4a6:	85 c0                	test   %eax,%eax
40d4a8:	7d 12                	jge    0x40d4bc
40d4aa:	68 14 07 00 00       	push   $0x714
40d4af:	68 04 76 40 00       	push   $0x407604
40d4b4:	56                   	push   %esi
40d4b5:	50                   	push   %eax
40d4b6:	ff 15 48 10 40 00    	call   *0x401048
40d4bc:	68 e5 30 00 00       	push   $0x30e5
40d4c1:	8d 44 24 14          	lea    0x14(%esp),%eax
40d4c5:	50                   	push   %eax
40d4c6:	ff d7                	call   *%edi
40d4c8:	50                   	push   %eax
40d4c9:	ff d3                	call   *%ebx
40d4cb:	33 c9                	xor    %ecx,%ecx
40d4cd:	66 3d ff ff          	cmp    $0xffff,%ax
40d4d1:	0f 95 c1             	setne  %cl
40d4d4:	f7 d9                	neg    %ecx
40d4d6:	66 89 4c 24 24       	mov    %cx,0x24(%esp)
40d4db:	8d 4c 24 10          	lea    0x10(%esp),%ecx
40d4df:	ff d5                	call   *%ebp
40d4e1:	66 83 7c 24 24 00    	cmpw   $0x0,0x24(%esp)
40d4e7:	74 1f                	je     0x40d508
40d4e9:	8b 16                	mov    (%esi),%edx
40d4eb:	56                   	push   %esi
40d4ec:	ff 92 14 07 00 00    	call   *0x714(%edx)
40d4f2:	85 c0                	test   %eax,%eax
40d4f4:	7d 12                	jge    0x40d508
40d4f6:	68 14 07 00 00       	push   $0x714
40d4fb:	68 04 76 40 00       	push   $0x407604
40d500:	56                   	push   %esi
40d501:	50                   	push   %eax
40d502:	ff 15 48 10 40 00    	call   *0x401048
40d508:	68 d6 13 00 00       	push   $0x13d6
40d50d:	8d 44 24 14          	lea    0x14(%esp),%eax
40d511:	50                   	push   %eax
40d512:	ff d7                	call   *%edi
40d514:	50                   	push   %eax
40d515:	ff d3                	call   *%ebx
40d517:	33 c9                	xor    %ecx,%ecx
40d519:	66 3d ff ff          	cmp    $0xffff,%ax
40d51d:	0f 95 c1             	setne  %cl
40d520:	f7 d9                	neg    %ecx
40d522:	66 89 4c 24 24       	mov    %cx,0x24(%esp)
40d527:	8d 4c 24 10          	lea    0x10(%esp),%ecx
40d52b:	ff d5                	call   *%ebp
40d52d:	66 83 7c 24 24 00    	cmpw   $0x0,0x24(%esp)
40d533:	74 1f                	je     0x40d554
40d535:	8b 16                	mov    (%esi),%edx
40d537:	56                   	push   %esi
40d538:	ff 92 14 07 00 00    	call   *0x714(%edx)
40d53e:	85 c0                	test   %eax,%eax
40d540:	7d 12                	jge    0x40d554
40d542:	68 14 07 00 00       	push   $0x714
40d547:	68 04 76 40 00       	push   $0x407604
40d54c:	56                   	push   %esi
40d54d:	50                   	push   %eax
40d54e:	ff 15 48 10 40 00    	call   *0x401048
40d554:	68 ad 74 00 00       	push   $0x74ad
40d559:	8d 44 24 14          	lea    0x14(%esp),%eax
40d55d:	50                   	push   %eax
40d55e:	ff d7                	call   *%edi
40d560:	50                   	push   %eax
40d561:	ff d3                	call   *%ebx
40d563:	33 c9                	xor    %ecx,%ecx
40d565:	66 3d ff ff          	cmp    $0xffff,%ax
40d569:	0f 95 c1             	setne  %cl
40d56c:	f7 d9                	neg    %ecx
40d56e:	66 89 4c 24 24       	mov    %cx,0x24(%esp)
40d573:	8d 4c 24 10          	lea    0x10(%esp),%ecx
40d577:	ff d5                	call   *%ebp
40d579:	66 83 7c 24 24 00    	cmpw   $0x0,0x24(%esp)
40d57f:	74 1f                	je     0x40d5a0
40d581:	8b 16                	mov    (%esi),%edx
40d583:	56                   	push   %esi
40d584:	ff 92 14 07 00 00    	call   *0x714(%edx)
40d58a:	85 c0                	test   %eax,%eax
40d58c:	7d 12                	jge    0x40d5a0
40d58e:	68 14 07 00 00       	push   $0x714
40d593:	68 04 76 40 00       	push   $0x407604
40d598:	56                   	push   %esi
40d599:	50                   	push   %eax
40d59a:	ff 15 48 10 40 00    	call   *0x401048
40d5a0:	68 d0 52 00 00       	push   $0x52d0